我想知道是否有人可以协助....我一直在关注各种教程(在这里和MSDN网站上),我最终完全混淆了自己!
我有一个类似于以下内容的数据集:
id | descipt | letter
1 | ADR | A
2 | Agril | A
3 | Banking | B
4 | Benefit | B
按字母顺序向Z.
我想要实现的是构建一个嵌套的转发器,当完成时看起来像:
A
ADR
Agril
B
Banking
Benefit
这是我到目前为止所做的,但它只是不起作用(目前我的错误是DataBinding:'System.Data.DataRow'不包含名为'descript'的属性。)。我只是不明白理解这一点。我的转发器看起来像:
<asp:Repeater ID="rptParentAD" runat="server">
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "letter") %><br />
<asp:Repeater Id="rptChildAD" runat="server" DataSource='<%# ((DataRowView)Container.DataItem).Row.GetChildRows("myRelation") %>'>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "descript") %><br />
</ItemTemplate>
</asp:Repeater>
</ItemTemplate>
</asp:Repeater>
我背后的代码是这样的:
dtCourses = myDataSet.Tables[1];
drFilter = dtCourses.Select(zAtoD); //Apply the filter to the table to get interests beginning with A - D
dtLettersAD = drFilter.CopyToDataTable().DefaultView.ToTable(true, "letter"); //Convert this filtered list back to a datatable but now it returns the distinct letters
dtCourses2 = drFilter.CopyToDataTable().DefaultView.ToTable();
dsParent2Child.Tables.Add(dtLettersAD);
dsParent2Child.Tables.Add(dtCourses2);
dsParent2Child.Relations.Add("myRelation", dtLettersAD.Columns["letter"], dtCourses2.Columns["letter"]);
rptParentAD.DataSource = dtLettersAD;
rptParentAD.DataBind();
基本上我只是完全迷惑自己。有人可以花几分钟时间来帮忙吗?
谢谢, 克雷格