【发布时间】:2013-03-28 13:34:03
【问题描述】:
我正在尝试列出一组关联,每个关联中都有一个分配给关联的“小部件”。该列表将包括关联名称和分配给它的任何小部件。问题是内部小部件列表需要按 DisplaySequence 排序。
EDMX 模型如下:
简化的重复标记
<asp:Repeater ID="rptAssociations" runat="server">
<ItemTemplate>
<div data-type="assn" id="<%# ((Association)Container.DataItem).AssociationID %>">
<h3 style="margin-top:15px;"><%# ((Association)Container.DataItem).Acronym %> - <%# ((Association)Container.DataItem).Name %></h3>
<asp:Repeater runat="server" ID="rptWidgets" DataSource="<%# ((Association)Container.DataItem).AssociationWidgets %>" >
<HeaderTemplate>
<ul class="WidgetList">
</HeaderTemplate>
<ItemTemplate>
<li id="<%# ((AssociationWidget)Container.DataItem).DisplaySequence %>"><%# ((AssociationWidget)Container.DataItem).Widget.Name %></li>
</ItemTemplate>
<FooterTemplate>
</ul>
</FooterTemplate>
</asp:Repeater>
</div>
</ItemTemplate>
</asp:Repeater>
当前查询
var associations = (from a in
context.Associations.Include("AssociationWidgets")
.Include("AssociationWidgets.Widget")
orderby a.Acronym
select a).ToList();
rptAssociations.DataSource = associations;
rptAssociations.DataBind();
我目前能够通过我现在拥有的设置获取我正在寻找的数据。但是,我正在寻找获取相同数据的最有效方法,以正确的显示顺序列出小部件。
我应该采用不同的 linq 查询方法吗?
【问题讨论】:
标签: c# asp.net linq asprepeater