假设我有两个表,类别和产品。类别具有导航属性作为产品和产品具有导航。现在我想在gridview中显示其中包含产品的前3个类别。
____________________________________________________________
Category Name| Description | Product Name | Unit Price
------------------------------------------------------------
Cat1 | Cat1 | Prod1 Cat1 | 100
| Prod2 Cat1 | 50
| Prod3 Cat1 | 50
-------------------------------------------------------------
Cat2 | Cat2 | Prod1 Cat2 | 100
| Prod2 Cat2 | 50
| Prod3 Cat2 | 50
-------------------------------------------------------------
到目前为止我的加价
<asp:GridView ID="grdCat" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:BoundField HeaderText="Category" DataField="CategoryName" />
<asp:BoundField HeaderText="Description" DataField="Description" />
<asp:TemplateField HeaderText="Products">
<ItemTemplate>
<asp:GridView ID="grdProd" runat="server" AutoGenerateColumns="false">
<Columns>
<asp:BoundField HeaderText="Product" DataField="ProductName" />
<asp:BoundField HeaderText="Price" DataField="UnitPrice" />
</Columns>
</asp:GridView>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
背后的代码
grdCat.DataSource = entities.Categories.Include("Products").ToList();
grdCat.DataBind();
我不知道如何完成它。 OnRowBound
事件很好,但导航属性可以帮助暂停。