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