带有MvcSiteMapProvider的子菜单

时间:2014-05-12 22:32:33

标签: asp.net-mvc asp.net-mvc-5 mvcsitemapprovider

目前我正在使用MvcSiteMapProvider来提供我的站点地图。我现在正在将我的菜单转换为使用相同的XML。我使用以下代码

创建了一个MyMenu.cshtml
@model MvcSiteMapProvider.Web.Html.Models.MenuHelperModel
@using MvcSiteMapProvider.Web.Html.Models

<div class="navbar-collapse collapse">
    <ul class="nav navbar-nav">
        @foreach (var node in Model.Nodes) { 
            <li>@Html.DisplayFor(m => node)</li>
        }
    </ul>
    @Html.Partial("_LoginPartial")
</div>

我用

显示它
@Html.MvcSiteMap().Menu("MyMenu")

我正试图让嵌套菜单起作用。因为我有一些下拉菜单项目有很多catergories。例如

  

- 主菜单<​​/ p>      

------子菜单

实现这一目标的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

菜单模板分为3个独立的部分,因此您需要通过指定自定义部分中的其他模板来覆盖每个部分(而不仅仅是主要部分)。有关一组模板的信息,请参阅this answer以帮助您入门。然后,只需按照您希望的方式修改HTML即可。