سلام
راستش من منوهای چند سطحی پویا را برای bootstrap navbar نوشتم. الگوریتمش را مجبور شدم به صورت بازگشتی بنویسم.اگر کسی میتونه به صورت غیر بازگشتی بگه ممنونش میشم.
این کد یه partialpage برای navbar هست که هرکسی برای bootstrap به راحتی میتونه استفاده کنه.
الان تنها مشکلم اینه که فیلدهای اضافی هم کوئری گرفته میشه.میدونم فیلدهای اضافی(بر اساس مدلی که ذکر کردم) را چگونه با استفاده از select حذف کنم اما توی viewmodel نمیدونم چه جوری children را از اطلاعات پر کنم؟
ممنون
راستش من منوهای چند سطحی پویا را برای bootstrap navbar نوشتم. الگوریتمش را مجبور شدم به صورت بازگشتی بنویسم.اگر کسی میتونه به صورت غیر بازگشتی بگه ممنونش میشم.
این کد یه partialpage برای navbar هست که هرکسی برای bootstrap به راحتی میتونه استفاده کنه.
@model IEnumerable<DomainClasses.Page> @helper ShowNavBar(IEnumerable<DomainClasses.Page> pages) { foreach (var page in pages) { if (page != null) { if (page.Children.Count == 0) { <text><li><a tabindex="-1" href="#">@page.Title</a></li></text> } if (page.Children.Count > 0 && page.Parent == null) { <text><li class="dropdown"><a class="dropdown-toggle" id="dLabel" role="button" data-toggle="dropdown" data-target="#" href="/page.html">@page.Title<b class="caret"></b></a><ul class="dropdown-menu" role="menu" aria-labelledby="dLabel"><li><a tabindex="-1" href="#">@page.Title</a></li></text> @ShowNavBar(page.Children) @:</ul></li> } if (page.Children.Count > 0 && page.Parent != null) { <text><li class="dropdown-submenu"><a tabindex="-1" href="#">@page.Title</a><ul class="dropdown-menu"></text> @ShowNavBar(page.Children) @:</ul></li> } } } } <div class="navbar" style="margin-bottom: 10px;"> <div class="navbar-inner"> <a class="brand" href="www.google.com">IT-EBOOK</a> <ul class="nav"> <li class="active"><a href="#">خانه</a></li> <li><a href="#">ورود</a></li> @ShowNavBar(Model) <li><a href="#">ارتباط با ما</a></li> </ul> <div class="input-append pull-left visible-desktop" style="margin-top: 5px;"> <input class="span6 search-input" id="Text1" type="text"> <button class="btn btn-primary" type="button">جست و جو</button> <button class="btn btn-info btn-advanced-search" type="button">پیشرفته</button> </div> </div> </div>
الان تنها مشکلم اینه که فیلدهای اضافی هم کوئری گرفته میشه.میدونم فیلدهای اضافی(بر اساس مدلی که ذکر کردم) را چگونه با استفاده از select حذف کنم اما توی viewmodel نمیدونم چه جوری children را از اطلاعات پر کنم؟
ممنون