Раздел рендеринга на странице Razor - PullRequest
0 голосов
/ 27 января 2019

Использование страниц Razor @RenderSection, по-видимому, недоступно на странице Razor, я получаю «RenderSection не существует в текущем контексте»

У меня есть несколько страниц Razor, где я пытаюсь использовать частичную страницу на частичной странице, это некоторые сопроводительные css и Javascript, которые я хотел бы добавить в раздел css и script

Если я просто определяю разделы на частичной странице, то ничего не отображается, поэтому после некоторого поиска кажется, что на странице, использующей частичную часть, вам необходимо добавить RenderSection в различные разделы.

Любая помощь будет оценена.

1 Ответ

0 голосов
/ 27 января 2019

Возможно, вы упустили момент использования @RenderSection в ASP.NET Core.@RenderSection должно быть только на странице Layout следующим образом:

 <script src="~/lib/jquery/dist/jquery.js"></script>
 @RenderSection("Scripts", required: false)

Тогда страница Razor должна выглядеть следующим образом:

@{
    ViewData["Title"] = "My Razor Page";

    Layout = "_Layout"; // If this specified in the `_ViewStart.cshtml` then you don't need it
}

<partial name="_YourPartial.cshtml"/>
@section scripts {
    <script src="~/js/yourjs.js" asp-append-version="true"></script> // this is specific to this Razor page only and it will also be available on the partial view called inside this Razor Page
}

И во время генерации html, scripts на вашей странице Razor будет отображаться следующим образом:

<script src="~/lib/jquery/dist/jquery.js"></script>
<script src="~/js/yourjs.js" asp-append-version="true"></script>

Надеюсь, это прояснит вас!

...