0
我有以下對象:麻煩內轉發結合分組列表的分組列表
var years = articles.GroupBy(a => a.Year).Select(yearGroup => new
{
Year = yearGroup.Key,
PerMonth = yearGroup.GroupBy(a => a.Month).Select(monthGroup => new
{
Month = monthGroup.Key,
Articles = monthGroup.ToList()
}).ToList()
}).ToList();
Repeater1.DataSource = years;
Repeater1.DataBind();
我試圖顯示此如下:
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<div class="yearGroup">
<h1 class="yearHeading"><%# DataBinder.Eval(Container.DataItem, "Year") %></h1>
<asp:Repeater ID="Repeater2" runat="server" DataSource='<%# DataBinder.Eval(Container.DataItem, "PerMonth")%>'>
<ItemTemplate>
<div class="monthGroup">
<h3 class="monthHeading"><%# DataBinder.Eval(Container.DataItem, "Month") %></h3>
<asp:Repeater ID="Repeater3" runat="server" DataSource="<%# DataBinder.Eval(Container.DataItem, "Articles") %>">
<ItemTemplate>
<h1>Article title</h1>
<%--<div class="Article">
<%# DataBinder.Eval(Container.DataItem, "Title") %>
</div>--%>
</ItemTemplate>
</asp:Repeater>
</div>
</ItemTemplate>
</asp:Repeater>
</div>
</ItemTemplate>
</asp:Repeater>
一切正常,直到最後的中繼器。當我刪除Repeater3
它的工作原理,但是當我把在最後中繼器,我得到一個錯誤,由於某種原因,它不喜歡
DataSource="<%# DataBinder.Eval(Container.DataItem, "Articles") %>
我的事件查看器說
服務器標籤沒有很好地形成。