c# – ViewStart和Layout – 有什么区别?

前端之家收集整理的这篇文章主要介绍了c# – ViewStart和Layout – 有什么区别?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我刚刚开始阅读ASP.NET MVC 4书,并有一个问题.在Razor部分作者说,如果我没有在View.cshtml文件中设置Layout变量,它将默认搜索_ViewStart.cshtml,但在另一部分他在Views / Shared中使用_Layout.cshtml,我没有得到它.

如果我在View.cshtml中有这样的smth:

@{
     Layout = null;
 }

它告诉这个视图没有布局,但如果我这样做:

@{

 }

所以这样会使View将搜索_ViewStart.cshtml文件或_Layout.cshtml?

解决方法

基本上默认情况下,我们在Views>>共享>> _Layout.cshtml,这个东西在_ViewStart.cshtml中定义,哪个是我们的默认主版本.

当我们在默认情况下创建一个主版式的视图时,它的主版本是_Layout.cshtml,但是我们可以从_ViewStart.cshtml

当我们写:

@{
     Layout = null;
 }

在我们看来,我们认为这个视图没有任何主布局,当我们主要创建部分视图或者没有主布局的独立视图时,这个视图是使用的.

如果你默认打开_ViewStart.cshtml,它写在它中:

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

如果我们想要,我们可以改变它.

您还可以通过在其上写入主版面视图的URL来更改某些特定视图主版面:

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

猜你在找的C#相关文章