gpt4 book ai didi

asp.net-mvc-3 - ASP.NET MVC 3,节和多个布局级别

转载 作者:行者123 更新时间:2023-12-01 04:02:28 26 4
gpt4 key购买 nike

我找不到让 @section 和 @RenderSection() 与多级布局一起工作的方法。在我的项目中,我定义了布局层次结构:

~/Views/Shared/_Layout.cshtml:

<!DOCTYPE html>
<html>
<head>
<meta ... />
<meta ... />

<link href="..." rel="stylesheet" type="text/css" />
<link href="..." rel="stylesheet" type="text/css" />

@RenderSection("Stylesheet", false)
</head>
<body>
<!-- lots of markup -->
@RenderBody()

<!-- more markup -->

<script src="..." type="text/javascript" />
<script src="..." type="text/javascript" />

@RenderSection("JavaScript", false)
</body>
</html>

~/Views/Shared/_BaseLayout.cshtml(没有 JavaScript 或样式表部分的定义):
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}

<!-- lots of markup -->
@RenderBody()

~/Views/Shared/_CreateEditLayout.cshtml(同样,没有 JavaScript 或样式表的定义):
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}

<!-- lots of markup -->
@RenderBody()

~ View /配置文件/Edit.cshtml:
@model ...

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

@section JavaScript {
<script type="text/javascript">
jQuery(document).ready(function ($) {
// lots of funny JS
});
</script>
}

我的问题是只需定义 @section JavaScript { } 就足够了(不必在该部分内编写标记或 JavaScript)为我的 Edit.cshtml停止被渲染。错误如下:以下部分已定义但尚未为布局页面“~/Views/Shared/_CreateEditLayout.cshtml”呈现:“JavaScript”。

任何想法出了什么问题?提前致谢。

最佳答案

这是不可能的,只有解决方法。
以下是您问题的答案:Razor Nested Layouts with Cascading Sections

关于asp.net-mvc-3 - ASP.NET MVC 3,节和多个布局级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12627853/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com