Определение раздела для всех видов - PullRequest
2 голосов
/ 18 июня 2011

Я создал раздел для нижнего колонтитула в своем веб-приложении MVC 3 asp.net:

<footer>
    @RenderSection("Footer", true)
</footer>

Этот нижний колонтитул будет одинаковым на каждой странице, поэтому мне не имеет смысла определять его для каждого просмотра. Итак, есть ли способ, как я могу глобально объявить этот раздел нижнего колонтитула для всех представлений? Нижний колонтитул будет содержать код, так что, насколько я знаю, это плохая практика, если не невозможно, напрямую определять его в файле .cshtml.

Заранее спасибо.

Ответы [ 3 ]

4 голосов
/ 18 июня 2011

Я обработал тот же сценарий, создав частичное представление "_Footer" и поместив его в "_Layout".

@ ViewBag.Title

@ Html.Partial ("_ Header")

<div id="content">
    <div id="nav-bar">
        @Html.Partial("_Menu")
   </div>

    <div class="container">
    @RenderBody()
</div>
</div>
<div id="footer">
    @Html.Partial("_Footer")
</div>

@Html.Partial("_Scripts")

2 голосов
/ 18 июня 2011

Sure

<footer>
    @if (IsSectionDefined("footer"))
    {
        @RenderSection("footer")
    } 
    else
    {
        ... put your default footer here
    }
</footer>

А в представлениях, которые вы хотите переопределить в нижнем колонтитуле, просто определите раздел.

0 голосов
/ 18 июня 2011

Вы можете разместить нижний колонтитул в вашем SiteLayout.cshtml. См. эту статью для получения дополнительной информации об использовании макетов с MVC 3.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...