Dans le fichier par défaut _Layout.cshtml
, Les scripts sont définis dans des "environnements" comme ceci:
<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>
Et en dessous c'est @RenderSection("scripts", required: false)
Je n'arrive pas à implémenter une section (dans ce cas "scripts") dans un fichier .cshtml séparé car il semble qu'ils se soient débarrassés de "@section
" Dans Core
Je voudrais ajouter des scripts spécifiques pour des vues spécifiques. Quelle est la nouvelle façon de procéder? Dois-je simplement tout vider dans _Layout
Maintenant?
Je pense que vous vous trompez. Cela fonctionne très bien dans ASP.NET Core. Je l'ai dans mon _layout.cshtml
@RenderSection("scripts", required: false)
et dans une de mes vues, j'y ajoute des scripts comme celui-ci:
@section Scripts {
@if (Model.CanEdit)
{
await Html.RenderPartialAsync("EditorScriptsPartial");
}
}