Установка раздела в представлении Razor по умолчанию

Вот ситуация, которую я пытаюсь решить:

У меня есть основной общий макет с одним разделом @RenderSection ("Меню " ), что я хочу по умолчанию использовать стандартное меню для большинства моих страниц, но я хотел бы заменить / переопределить этот раздел на нескольких дополнительных страницах. Возможно ли это с Razor на данном этапе игры?

Я надеялся, что смогу определить реализацию этого раздела по умолчанию в _ViewStart.cshtml, но, похоже, это ему не нравится.

Будет ли частичный вид меню быть лучше в этой ситуации?

Изменить:

Теперь я получаю следующую ошибку с этим кодом: Следующие разделы были определены, но не были обработаны для страницы макета "~ / Views / Shared / _Layout. cshtml ":" menu ".

_Layout.cshtml

            <div id="menu">
@if (IsSectionDefined("menu"))
{
    RenderSection("menu");
}
else { 
    <text>
            <ul>
                <li>@Html.ActionLink("Home", "Index", "Home")</li>
                <li><a href="#">Lookups</a>
                    <ul>
                        @Html.ActionLink("Product","Index","Product")
                    </ul>
                </li>
            </ul>
    </text>
}
        </div>

Index.cshtml

@section menu {
            <ul>
                <li>@Html.ActionLink("Product", "Index", "Product")</li>
                <li>@Html.ActionLink("Form Type", "Index", "Product")</li>
                <li>@Html.ActionLink("Supplier", "Index", "Product")</li>
            </ul>
    }
18
задан Richard Edwards 17 November 2010 в 21:57
поделиться