ASP.NET数据绑定与面页的嵌入式代码

数据绑定表达式语法

所有数据绑定表达式都必须包含在 <%# %> 字符之间。

ASP.NET 支持分层数据绑定模型,该模型创建服务器控件属性和数据源之间的绑定。几乎任何服务器控件属性都可以绑定到任何公共字段或属性,这些公共字段或属性位于包含页或服务器控件的直接命名容器上。

数据绑定表达式使用 Eval Bind 方法将数据绑定到控件,并将更改提交回数据库。Eval 方法是静态(只读)方法,该方法采用数据字段的值作为参数并将其作为字符串返回。Bind 方法支持读/写功能,可以检索数据绑定控件的值并将任何更改提交回数据库。

可以使用 XPath XPathSelect 方法以及 XPathBinder 类从 XmlDataSource 控件绑定到 XML 数据。有关更多信息,请参见 XmlDataSource Web 服务器控件。

<asp:label text='<%#  StateList.SelectedItem.Text %>'  runat="server"/>

 

集合:<asp:ListBoxid=List datasource=<%# myArray %> runat=server>

表达式: <%# expression %>

方法结果:<%# GetBalance(custID)%>

 

DataBinder.Eval()方法:

Asp.net1.0用法:

<%# DataBinder.Eval(Container.DataItem,fieldName,{0:c}) %>

DataBinder.Eval参数1-数据项的命名容器2-数据字段名3-格式字符串

Asp.net2.0用法: <%# Eval(fieldName,{0:c}) %>

Xml数据源的绑定    <%# xpath(fieldName) %>

<%# XPath("shipaddress/address1") %>

 

注意:数据绑定的变量如果在cs代码文件中定义一定用Public声明为公有变量,否则无法在绑定表达式中使用.最后一定要在页面上调用 his.DataBind()使绑定生效

 

嵌入式代码块

将代码添加到 ASP.NET 网页中的默认模型要么创建一个代码隐藏类文件(代码隐藏页),要么将页的代码写到具有 runat="server" 属性的 script 块中(单文件页)。编写的代码通常会与页上的控件进行交互。例如,通过从代码中设置控件的 Text(或其他)属性,可以在页上显示信息。

<%@ Page Language="C#" %>

<html>

<body>

    <form id="form1" runat="server">

    <% for(int i = 0; i < 6; i++) %>

       <% { Response.Write("<br>" + i.ToString()); }%>

    </form>

</body>

</html>

 

下面的代码示例演示一个嵌入式代码块,该代码块显示 span 元素中的公共 GetTime() 函数的值。在嵌入式代码块中,语法 <% = expression %> 用于解析表达式,并将其值返回到块中。

<%@ Page Language="C#" %>

<script runat=server>

protected String GetTime()

{    return DateTime.Now.ToString("t");}

</script>

<html>

<body>

    <form id="form1" runat="server">

       Current server time is <% =GetTime()%>.

    </form>

</body>

</html>

嵌入式代码块必须使用页的默认语言进行编写。例如,如果页的 @ Page 指令包含属性 language="VB",则页将使用 Visual Basic 编译器对标有 runat="server" 的所有脚本块中的代码以及 <% %> 分隔符中的所有内嵌代码进行编译。

 

ASP.NET 网页中支持嵌入式代码块,主要用于保留与旧的 ASP 技术的向后兼容性。一般情况下,将嵌入式代码块用于复杂的编程逻辑并不是最佳做法,因为当页中的代码与标记混合时,很难进行调试和维护。此外,由于代码仅在呈现页的过程中执行,因此与将代码置于适当的页处理阶段以执行后台代码或脚本块代码相比,其灵活性大大降低。

嵌入式代码块的部分用途包括:

·         将控件元素或标记元素的值设置为函数返回的值,如前面的示例所示。

·         将计算直接嵌入到标记或控件属性中。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值