您的位置:首页 > 其它

一种新的嵌套绑定的方法

2005-12-01 10:13 211 查看
以前做嵌套,要么是在多次访问数据库,要么是把数据取出来,然后分别使用DataView的RowFilter来做,今天发现了一种新的方法,使用DataSet的Relations可以很方便的做嵌套

方法主要是在dataset的表之间建立关联,然后在前台html视图里使用

Business.Customer obj = new Zeda.CRM.Business.Customer();
DataSet ds = obj.up_CRM_ProductSearchList(this.KeyWord);
ds.Relations.Add("MyRelation",ds.Tables[0].Columns["CustomerId"],ds.Tables[1].Columns["CustomerId"]);

ParentRep.DataSource = ds.Tables[0].DefaultView;
//ParentRep.DataBind();
AspNetPager1.RecordCount = ds.Tables[0].Rows.Count;
Page.DataBind();
ds.Dispose();
obj.Dispose();
html视图代码

<asp:repeater id="ParentRep" Runat="server">
<ItemTemplate>
<tr>
<td><asp:Repeater ID=sonRep Runat=server DataSource='<%# ((DataRowView)Container.DataItem).Row.GetChildRows("MyRelation") %>'>
<ItemTemplate>
</ItemTemplate>
<SeparatorTemplate>
  
</SeparatorTemplate>
</asp:Repeater></td>
</tr>
</ItemTemplate>
<SeparatorTemplate>
<tr>
<td height="1" background="../images/xian01.gif" colspan="2"></td>
</tr>
</SeparatorTemplate>
</asp:repeater>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: