Я хочу, чтобы подменю открывалось по мере добавления новых подразделов путем перечисления и изменения меню и подразделов.
Я сделал это так. Но подменю факультетов не указаны. Я не смог вернуть html.
Я перечислил коды, которые я написал ниже.
Просмотр
<ul class="nav-menu">
<li><a href="/Home/Index">ANASAYFA</a></li>
<li><a href="/Home/Hakkimizda">ÜNİVERSİTEMİZ</a></li>
<li><a href="/Home/Akademisyenler">AKADEMİSYENLER</a></li>
<li><a href="/Home/Kariyer">KARİYER</a></li>
<li class="menu-has-children">
<a href="">FAKÜLTELER</a>
<ul>
<li><a href="blog-home.html">TIP FAKÜLTESİ</a></li>
<li><a href="blog-single.html">ECZACILIK FAKÜLTESİ</a></li>
<li><a href="blog-single.html">SAĞLIK BİLİMLERİ</a></li>
<li><a href="blog-single.html">MÜHENDİSLİK FAKÜLTESİ</a></li>
<li><a href="blog-single.html">MESLEK YÜKSEK OKULU</a></li>
</ul>
</li>
<li><a href="/Home/Iletisim">İLETİŞİM</a></li>
</ul>
@helper GetTreeMenus(IEnumerable<isnuuniversity.Models.AnaMenu> siteMenu, Nullable<int> parentID)
{
foreach (var i in siteMenu.Where(a => a.ParentId.Equals(parentID)))
{
var submenu = siteMenu.Where(a => a.ParentId.Equals(i.MenuId)).Count();
string action = i.ActionName;
string controller = i.ControllerName;
<li><a href="/@i.ControllerName/@i.ActionName">@i.MenuText</a></li>
if (submenu == 5)
{
<li class="menu-has-children">
<ul>@GetTreeMenus(siteMenu, i.MenuId)</ul>
</li>
}
}
}
@{
if (Session["MenuList"] != null)
{
<ul class="nav-menu">
@GetTreeMenus(Session["MenuList"] as IEnumerable<isnuuniversity.Models.AnaMenu>, 0)
</ul>
}
}
Контроллер
public PartialViewResult AnaSayfaMenu()
{
List<AnaMenu> list = db.AnaMenu.ToList();
Session["MenuList"] = list;
return PartialView();
}
База данных введите описание изображения здесь Вид меню введите описание изображения здесь