Настройка вывода MCSiteMap для дочернего меню корневого узла

Я пытаюсь настроить внешний вид выводимого макета для MVCsiteMap и с некоторым успехом изменяю MenuHelperModel.cshtml. Единственная проблема, которая у меня есть, это то, что я не могу понять, как сделать, как сделать подсписки первого SiteMapNode? В настоящее время вывод выглядит так:

•Home 
•Contact US 
•News
    Sports 
•About 

Но я хочу, чтобы это выглядело так:

•Home 
     Contact US 
•News
    Sports 
•About

Я не могу понять, как сделать ссылку «Свяжитесь с нами» частью ссылки «Главная», например Sprots для новостей.

Вот мой код SiteMap:

<?xml version="1.0" encoding="utf-8" ?>
<mvcSiteMap xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xmlns="http://mvcsitemap.codeplex.com/schemas/MvcSiteMap-File-3.0"
            xsi:schemaLocation="http://mvcsitemap.codeplex.com/schemas/MvcSiteMap-File-3.0 WebSiteMapSchema.xsd"
            enableLocalization="true">

    <mvcSiteMapNode title="Home" controller="Home" action="Index">
        <mvcSiteMapNode title="Contact US" controller="Home" action="Contact" />

        <mvcSiteMapNode title="News" controller="Home" action="News">
            <mvcSiteMapNode title="Sports" controller="Home" action="Sprots" />
        </mvcSiteMapNode>

        <mvcSiteMapNode title="About" controller="Home" action="About"/>
    </mvcSiteMapNode>
</mvcSiteMap>

И MenuHelperModel.cshtml:

@model MvcSiteMapProvider.Web.Html.Models.MenuHelperModel
@using System.Web.Mvc.Html
@using MvcSiteMapProvider.Web.Html.Models

<ul>
    @foreach (var node in Model.Nodes) { 
        <li>@Html.DisplayFor(m => node)
            @if (node.Children.Any()) {
                @Html.DisplayFor(m => node.Children)
            }
        </li>
    }
</ul>

Что мне нужно изменить, чтобы ссылка «Свяжитесь с нами» стала дочерней ссылкой «Главная»?


person Community    schedule 15.06.2013    source источник


Ответы (1)


Я думаю, что понял это, похоже, если я использую этот код для визуализации SiteMap, он не отображает первый узел, это позволит мне создать новое домашнее меню и добавить дочерние параметры. Мне еще предстоит попробовать это на подстраницах, так как у меня есть только индексная страница. Как только я протестирую его на подстраницах, чтобы убедиться, что он по-прежнему отображается правильно, я обновлю его.

@Html.MvcSiteMap().Menu(false)
person Community    schedule 15.06.2013