Repeater.DataSourceID 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
public:
virtual property System::String ^ DataSourceID { System::String ^ get(); void set(System::String ^ value); };
public virtual string DataSourceID { get; set; }
member this.DataSourceID : string with get, set
Public Overridable Property DataSourceID As String
属性值
数据源控件的 ID
属性。
例外
以下原因之一会导致无法解析数据源:
为 DataSource 和 DataSourceID 属性指定值。
在页面上找不到 属性 DataSourceID 指定的数据源。
属性 DataSourceID 指定的数据源不实现 IDataSource。
示例
下面的代码示例演示如何将 DataSourceID 属性设置为 ID 控件的 SqlDataSource 属性。 加载页面时, Repeater 控件将绑定到控件 SqlDataSource 指定的数据源,并将数据显示给用户。
<%@ page language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Repeater.DataSourceID Property Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>Repeater.DataSourceID Property Example</h3>
<asp:repeater id="Repeater1"
datasourceid="SqlDataSource1"
runat="server">
<headertemplate>
<table border="1">
<tr>
<td><b>Product ID</b></td>
<td><b>Product Name</b></td>
</tr>
</headertemplate>
<itemtemplate>
<tr>
<td> <%# Eval("ProductID") %> </td>
<td> <%# Eval("ProductName") %> </td>
</tr>
</itemtemplate>
<footertemplate>
</table>
</footertemplate>
</asp:repeater>
<asp:sqldatasource id="SqlDataSource1"
connectionstring="<%$ ConnectionStrings:NorthWindConnection%>"
selectcommand="SELECT ProductID, ProductName FROM [Products] Where ProductID <= 10"
runat="server">
</asp:sqldatasource>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Repeater.DataSourceID Property Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>Repeater.DataSourceID Property Example</h3>
<asp:repeater id="Repeater1"
datasourceid="SqlDataSource1"
runat="server">
<headertemplate>
<table border="1">
<tr>
<td><b>Product ID</b></td>
<td><b>Product Name</b></td>
</tr>
</headertemplate>
<itemtemplate>
<tr>
<td> <%# Eval("ProductID") %> </td>
<td> <%# Eval("ProductName") %> </td>
</tr>
</itemtemplate>
<footertemplate>
</table>
</footertemplate>
</asp:repeater>
<asp:sqldatasource id="SqlDataSource1"
connectionstring="<%$ ConnectionStrings:NorthWindConnection%>"
selectcommand="SELECT ProductID, ProductName FROM [Products] Where ProductID <= 10"
runat="server">
</asp:sqldatasource>
</form>
</body>
</html>
注解
DataSourceID使用 属性访问ID数据源控件的 属性,Repeater控件应使用该属性来检索其数据源。 属性 DataSourceID 引用的数据源控件可以是实现 IDataSource 接口的任何控件。 数据源控件必须与引用它的控件位于同一命名容器 Repeater 中,或者存在于控件的 Repeater 父控件中。 为 属性指定值 DataSourceID 时,控件 Repeater 将绑定到指定的数据源控件。 无需编写显式调用 方法的代码 DataBind 。
或者,可以使用 DataSource 属性指定要绑定到 Repeater 控件的值的源。 数据源必须是实现 System.Collections.IEnumerable 接口 (的集合,例如 System.Data.DataView 或 System.Collections.ArrayList 对象) 或 IListSource 接口。 设置 DataSource 属性时,必须编写代码来执行数据绑定。
如果为 DataSource 和 DataSourceID 属性指定了值,则 ASP.NET 无法解析数据源,并 System.Web.HttpException 引发异常。
此属性的值存储在视图状态中。