您是否有理由在_Layout.cshtml中将Layout属性设置为null?
例如,像这样,在渲染身体视图之前?
...
<section id="content">
@{ Layout = null; }
@RenderBody()
</section>
...
这对我来说似乎很荒谬,删除行设置布局并不会改变页面加载观察的方式。
是否有任何原因要在_Layout.cshtml中设置Layout属性?
答案 0 :(得分:3)
如果你想创建一个不会从_Layout继承任何布局的局部视图,你将使用@ {Layout = null;在你偏见的开始。
答案 1 :(得分:3)
布局页面也可以有布局。在嵌套布局中,您有意使用布局属性来定义布局页面的超级布局。默认情况下,如果未指定任何内容,则在布局页面中为null。当您@{Layout=null}
时,您明确地说这是您的最终布局,因此它不会嵌套在任何超级布局中。
答案 2 :(得分:0)
我知道这是一个老线程,但我的问题通过这个技巧解决了! 我想在这里分享我的解决方案
首先将_ViewStart.cshtml
更改为:
@{
if (Layout != "")
{
Layout = "~/Views/Shared/_Layout.cshtml";
}
}
正如您所看到的,Layout
是一个属性,我们会检查它是否等于""
接下来,您必须在观看中添加此内容
@{
Layout = "";
}
如果没有布局,你将获得快乐的观点!