Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 使用嵌套布局时,是否可以使用Razor引擎将截面渲染委托给父布局?_Asp.net_Asp.net Core_Razor_Asp.net Core 2.0_Asp.net Core 2.2 - Fatal编程技术网

Asp.net 使用嵌套布局时,是否可以使用Razor引擎将截面渲染委托给父布局?

Asp.net 使用嵌套布局时,是否可以使用Razor引擎将截面渲染委托给父布局?,asp.net,asp.net-core,razor,asp.net-core-2.0,asp.net-core-2.2,Asp.net,Asp.net Core,Razor,Asp.net Core 2.0,Asp.net Core 2.2,我有一个在Asp.NETCore2.2框架之上编写的项目,它利用Razor模板引擎生成视图 我有以下布局“祖父”\u layout.cshtml <!DOCTYPE html> <html lang="en" dir="ltr"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.

我有一个在Asp.NETCore2.2框架之上编写的项目,它利用Razor模板引擎生成视图

我有以下布局“祖父”
\u layout.cshtml

<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta name="author" content="CrestApps.com">
    <meta name="description" content="@ViewData["description"]">
    <meta name="keywords" content="@ViewData["keywords"]">
    <title></title>
    <partial name="_Styles" />
    @RenderSection("Styles", required: false)
</head>
<body>
    <partial name="_Header" />
    <partial name="_CookieConsentPartial" />

    <main role="main">
        @RenderBody()
    </main>

    <partial name="_Footer" />
    <partial name="_Scripts" />

    @RenderSection("Scripts", required: false)
</body>
</html>
那么我的观点是这样的

@{
    Layout = "~/Views/Shared/_SecondLayout.cshtml";
}

@*.... Some code ....*@
@section scripts {
   // Some JS Code
}
上述代码将在
\u SecondLayout
版面中插入
@节脚本。我希望它被注入到
\u Layout.cshtml
指示的位置,以使JS代码保持在页面的最底部,并在加载所有其他资源后加载脚本


我如何指示
\u SecondLayout
@RenderSection()
部分渲染委托给上级?

如果我正确理解您的问题,请替换\u SecondLayout.cshtml的最后一行

    @RenderSection("Scripts", required: false)


如果我正确理解了您的问题,请替换第二行布局.cshtml

    @RenderSection("Scripts", required: false)


由于您已经在
\u SecondLayout
中使用了
@section scripts
,请尝试在
\u Layout
中使用
@RenderSection(“JavaScripts”,必填项:false)
,然后使用
@section JavaScripts{}
\u SecondLayout
中,因为您已经在
\u SecondLayout
中使用了
@section scripts
尝试在
\u SecondLayout
中使用
@RenderSection(“JavaScripts”,必选:false)
,然后在
\u SecondLayout
中使用
@section JavaScripts{}
    @section Scripts {
      @RenderSection("Scripts", required: false)
    }