ASP.NET Core MVC の「@section」に相当するものは何ですか? 質問する

ASP.NET Core MVC の「@section」に相当するものは何ですか? 質問する

デフォルトの_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)

@sectionCore で" " が削除されたように見えるため、別の .cshtml ファイルにセクション (この場合は "scripts") を実装できないようです。

特定のビューに特定のスクリプトを追加したいと思います。これを行うための新しい方法は何ですか? 今すべてをダンプするだけですか_Layout?

ベストアンサー1

あなたは間違っていると思います。ASP.NET Coreでは問題なく動作します。私はこれを_layout.cshtmlに持っています

@RenderSection("scripts", required: false)

そして、私のビューの 1 つに次のようなスクリプトを追加しています。

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

おすすめ記事