【问题标题】:Equivalent of "@section" in ASP.NET Core MVC?等效于 ASP.NET Core MVC 中的“@section”?
【发布时间】:2016-03-25 14:50:25
【问题描述】:

在默认的_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 文件中实现一个部分(在本例中为“脚本”),因为看起来他们摆脱了 Core 中的“@section

我想为特定视图添加特定脚本。解决这个问题的新方法是什么?我现在是否将所有内容都转储到 _Layout 中?

【问题讨论】:

    标签: asp.net asp.net-mvc razor asp.net-core asp.net-core-mvc


    【解决方案1】:

    我认为你错了。它在 ASP.NET Core 中运行良好。我的 _layout.cshtml 中有这个

    @RenderSection("scripts", required: false)
    

    在我的一个观点中,我正在那里添加这样的脚本:

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

    【讨论】:

    • 哦,哇,你完全正确——那是我的愚蠢错误。我没有在智能感知中看到“@section”弹出,而是看到了不同的部分功能,这让我很失望。非常感谢你,乔。如果可以的话,我会将此标记为答案。
    • 另外,我还有一个小问题——也许你可以帮忙。在 _Layout 中,我将脚本放在哪个环境(开发、暂存等)中是否重要?
    • 通常在开发中你会添加未缩小的脚本,而在生产中你会缩小脚本和/或捆绑在一起的脚本。所以是的,如果你使用环境标签来包装它们很重要,但是你是否在环境中包装脚本是可选的。
    • 这个大写/小写是必需的吗,我想知道吗? “脚本”、“脚本”
    • 是的,只要该部分在布局中定义,任何部分都可以工作。样式部分没什么特别的
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-25
    • 1970-01-01
    相关资源
    最近更新 更多