2
我想通过多级动态菜单进行循环。我已经成功地做到这一点手动,即每次如果要显示其父母的孩子Menus
,我必须手动循环。 我想知道通过这些动态菜单循环多层次的最佳方式或替代方法 这是我迄今为止所做的;在Asp.Net MVC中循环多级动态菜单
@{ var menusList = ViewBag.Menus as IEnumerable<ParentMenuViewModel>; }
@foreach (var parentMenu in menusList.Where(p => p.ParentId == 0))
{
<ul>
<li>
<h1>@parentMenu.Name</h1>
@if (menusList.Count(p => p.ParentId == parentMenu.MenuId) > 0)
{
<ul>
@foreach (var childMenu in menusList.Where(p => p.ParentId == parentMenu.MenuId))
{
<h2>@childMenu.Name</h2>
if (menusList.Count(p => p.ParentId == childMenu.MenuId) > 0)
{
foreach (var subChild in menusList.Where(p => p.ParentId == childMenu.MenuId))
{
<h3>@subChild.Name</h3>
}
}
}
</ul>
}
</li>
</ul>
}
UPDATE:输出看起来是这样的;
HOME
SUB MENU1
SUB SUB MENU1
SUB SUB MENU2
但是,我在我的数据库中有这样的东西;
HOME
SUB MENU1
SUB SUB MENU1
SUB SUB MENU2
Sub SUB SUB MENU1
Sub SUB SUB MENU2
这是我的模型;
根据我的需要修改它,它工作。谢谢 – 2013-05-12 10:54:13
你可以使它asycronous(你的代码)。我试过但没有成功。使用异步并等待关键字 – 2013-05-19 13:25:46