Asp.net

等效於 ASP.NET Core MVC 中的“@section”?

  • March 25, 2016

在預設_Layout.cshtml文件中,腳本在“環境”中定義,如下所示:

<environment names="Development">
    <script src="~/lib/jquery/dist/jquery.js"></script>
    <script src="~/lib/bootstrap/dist/js/bootstrap.js"></script>
    <script src="~/js/site.js" asp-append-version="true"></script>
</environment>
<environment names="Staging,Production">
    <script src="https://ajax.aspnetcdn.com/ajax/jquery/jquery-2.1.4.min.js"
                   asp-fallback-src="~/lib/jquery/dist/jquery.min.js"
                   asp-fallback-test="window.jQuery">
    </script>
    <script src="https://ajax.aspnetcdn.com/ajax/bootstrap/3.3.5/bootstrap.min.js"
                   asp-fallback-src="~/lib/bootstrap/dist/js/bootstrap.min.js"
                   asp-fallback-test="window.jQuery && window.jQuery.fn && window.jQuery.fn.modal">
    </script>
    <script src="~/js/site.min.js" asp-append-version="true"></script>
</environment>

下面是@RenderSection("scripts", required: false)

我似乎無法在任何單獨的 .cshtml 文件中實現一個部分(在本例中為“腳本”),因為看起來他們擺脫了@section核心中的“”

我想為特定視圖添加特定腳本。解決這個問題的新方法是什麼?我現在把所有東西都扔進_Layout去嗎?

我認為你錯了。它在 ASP.NET Core 中執行良好。我的 _layout.cshtml 中有這個

@RenderSection("scripts", required: false)

在我的一個觀點中,我在那裡添加了這樣的腳本:

@section Scripts {
   @if (Model.CanEdit)
  {
     await Html.RenderPartialAsync("EditorScriptsPartial");
  }
}

引用自:https://stackoverflow.com/questions/36222224