Какова цель @RenderSection и как он работает? Я понимаю, что делают связки, но мне еще предстоит выяснить, что это делает, и это, вероятно, важно.
@RenderSection("scripts", required: false)
 Возможно, небольшой пример о том, как его использовать?
Какова цель @RenderSection и как он работает? Я понимаю, что делают связки, но мне еще предстоит выяснить, что это делает, и это, вероятно, важно.
@RenderSection("scripts", required: false)
 Возможно, небольшой пример о том, как его использовать?
Если у вас есть вид _Layout.cshtml, подобный этому
<html>
    <body>
        @RenderBody()
        @RenderSection("scripts", required: false)
    </body>
</html>
то вы можете иметь представление содержимого index.cshtml, подобное этому
@section scripts {
     <script type="text/javascript">alert('hello');</script>
}
обязательный параметр указывает, должен ли вид с использованием страницы макета иметь раздел сценариев
Если
(1) у вас есть вид _Layout.cshtml, подобный этому
<html>
    <body>
        @RenderBody()
    </body>
    <script type="text/javascript" src="~/lib/layout.js"></script>
    @RenderSection("scripts", required: false)
</html>
(2) у вас есть Contacts.cshtml
@section Scripts{
    <script type="text/javascript" src="~/lib/contacts.js"></script>
}
<div class="row">
    <div class="col-md-6 col-md-offset-3">
        <h2>    Contacts</h2>
    </div>
</div>
(3) у вас есть About.cshtml
<div class="row">
    <div class="col-md-6 col-md-offset-3">
        <h2>    Contacts</h2>
    </div>
</div>
На странице макета, если требуется, установлено значение false "@RenderSection (" скрипты ", обязательно: false)". Когда страница отображается и пользователь находится на странице, contacts.js не отображает.
    <html>
        <body><div>About<div>             
        </body>
        <script type="text/javascript" src="~/lib/layout.js"></script>
    </html>
если требуется, установлено значение true "@RenderSection (" scripts ", required: true)". Когда страница отображается и пользователь находится на странице ОО, отображается информация о ссылках на контакт. js STILL.
<html>
    <body><div>About<div>             
    </body>
    <script type="text/javascript" src="~/lib/layout.js"></script>
    <script type="text/javascript" src="~/lib/contacts.js"></script>
</html>
В КОРОТКЕ, если установлено значение истина, независимо от того, нужна она вам или нет на других страницах, она будет отображаться в любом случае. Если установлено значение false, оно будет отображаться только при отображении дочерней страницы.
 Здесь определение Rendersection от MSDN
На страницах макета отображает содержимое именованного раздела. MSDN
На странице _layout.cs положить
@RenderSection("Bottom",false)
  Здесь визуализируется содержимое раздела bootom и указывается false логическое свойство, чтобы указать, является ли раздел обязательным или нет.
@section Bottom{
       This message form bottom.
}
 Это означает, что если вы хотите использовать нижний раздел на всех страницах, тогда вы должны использовать false в качестве второго параметра в методе Rendersection.