我有一个项目,我需要填充一个类别列表,其中包含子项目。基本上是一个餐厅菜单,其中包括类别(例如:开胃菜)和该类别中列出的食品。我试图使用实体框架,我想知道有一种方法可以将两个模型类型绑定到一个列表视图。
例如,这是我的aspx页面:
<asp:ListView ID="CatList"
ItemType="FOTW.Models.Category"
runat="server"
SelectMethod="GetCat" >
<ItemTemplate>
<b style="font-size: large; font-style: normal">
<a href="/ItemList.aspx?id=<%#: Item.id %>"><%#: Item.CatDescn %>
</a>
</b>
</ItemTemplate>
<ItemSeparatorTemplate> <br/> </ItemSeparatorTemplate>
</asp:ListView>
这是背后的代码:
public IQueryable<Restaurant> GetName([QueryString("id")] int? restId)
{
var _db = new DatabaseContext();
IQueryable<Restaurant> query = _db.Restaurants;
if (restId.HasValue && restId > 0)
{
query = query.Where(p => p.id == restId);
}
else
{
query = null;
}
return query;
}
当您选择餐馆并使用类别填充列表框时,这会从默认页面中提取ID。
我目前正在重定向到另一个页面,查看食物项目,这些食物项目也会在URL中查询ID并根据该页面填充列表框,但这对于resturant菜单来说并没有多大意义。有什么建议吗?