У меня есть базовый макет, BaseLayout.cshtml:
<html>
<body>
@RenderBody()
<div id="footer">
@if (!IsSectionDefined("Footer")) {
Default footer markup
}
else {
@RenderSection("Footer")
}
</div>
</body>
</html>
Я извлекаю из этого вложенный макет WithSidebar.cshtml:
@{ Layout = "BaseLayout.cshtml"; }
<div>
<div>
@RenderBody()
</div>
<div>Sidebar</div>
</div>
Какие изменения необходимо внести в макет WithSidebar:
- Чтобы разрешить переопределение раздела нижнего колонтитула в BaseLayout в представлении?
- Не переопределить нижний колонтитул по умолчанию и придерживаться того, что определено в BaseLayout?
Я работаю против ASP.NET MVC 3 RC2. Я прочитал эту запись Марцина Добоша: http://blogs.msdn.com/b/marcinon/archive/2010/12/08/optional-razor-sections-with-default-content.aspx, но мне не нравится, что она работает чисто во вложенных макетах.