我正在尝试创建一个具有所有类别的侧菜单(以及稍后的子菜单与子类别)
在网上找到了这段代码,但我不确定是怎么回事
asp:Repeater id="MenuRepeater" runat="server">
<headertemplate>
<ul>
</headertemplate>
<itemtemplate>
<li></a></li>
</itemtemplate>
<footertemplate>
</ul>
</footertemplate>
</asp:Repeater>
我应该在li标签之间输入什么,使用LINQ需要什么代码?
Repeater是一个数据绑定控件,所以它需要IDataSource来绑定进出它的数据,你可以写你的LINQ查询从数据库中获取菜单,调用。tolist()方法并将其绑定到Repeater控件。
例如:<asp:Repeater id="MenuRepeater" runat="server">
<headertemplate>
<ul>
</headertemplate>
<itemtemplate>
<li><%# Bind("MenuItem") %></li>
</itemtemplate>
<footertemplate>
</ul>
</footertemplate>
</asp:Repeater>
在后面的代码中,您将创建IQueryable对象,并通过调用.ToList()将其转换为IList,如下所示:var query = from m in Context
select m.MenuItem;
MenuRepeater.DataSource = query.ToList();
MenuRepeater.DataBind();