本文讨论了下列数据绑定主题: 数据绑定概要 <%# %> 语法 ASP.NET 引入了一种新的声明语法 <%# %>。该语法是在 .aspx 页中使用数据绑定的基础。所有数据绑定表达式都必须包含在这些字符中。下面的列表包含从多个源进行简单数据绑定的示例:
·
<%# custID %>
·
<asp:ListBox id="List1"
datasource='<%# myArray %>' runat="server">
·
<%# ( customer.First Name + "
" + customer.LastName ) %>
·
<%# GetBalance(custID) %> 在前面的示例中,<%# %> 内联标记用于指示将把特定数据源中的信息放在 .aspx 页中的什么位置。以下数据绑定示例使用 TextBox Web
服务器控件: <asp:textbox id=txt text="<%# custID %>"
runat=server /> 有关数据绑定语法的详细信息,请参阅以下 .NET Framework 软件开发工具包 (SDK) 文档: Page.DataBind() 与 Control.DataBind() 为 .aspx 页上的对象确定并设置了特定数据源后,必须将数据绑定到这些数据源。您可以使用Page.DataBind 或 Control.DataBind 方法将数据绑定到数据源。 列表控件模板中的绑定 您可以使用列表控件中的模板来绑定和自定义数据源的各个记录。本节提供了三种可用于执行此操作的方法。 DataBinder.Eval 方法 当数据源处理从数据库返回的数据时,它可能包含很多份信息。您可以使用通用的 DataBinder.Eval方法返回数据。在以下代码示例中,“au_id”字段是从容器对象的数据源中返回的: <%# DataBinder.Eval(Container.DataItem,"au_id")
%> 有关 DataBinder.Eval 方法的详细信息,请参阅以下 .NET Framework SDK 文档: DataBinder.Eval 方法 显式转换 如果您需要更多控件,可使用显式转换。显式转换使用类型转换关键字。这些关键字充当函数,而由编译器生成内联代码。因此,执行速度要比通过调用函数稍快。下列代码示例使用显式转换: // DataTable as the DataSource <%#
((System.Data.DataRowView)Container.DataItem)["au_id"] %> // DataReader as the DataSource <%#
((System.Data.Common.DbDataRecord)Container.DataItem)["au_id"] %> // DataReader as the DataSource <%# ((System.Data.Common.DbDataRecord)Container.DataItem)[0]
%> ItemDataBound 事件 您还可以使用控件的 ItemDataBound 事件来绑定数据。当将某个项目的数据绑定到控件时,就会发生该事件。 |
|
来自: Knowledge Sou... > 《ASP.NET》