如何更改默认的MVC布局页面

时间:2015-03-07 05:50:31

标签: c# asp.net asp.net-mvc asp.net-mvc-4 razor

我正在进行一些开发,我需要在MVC中实现一个登录表单。 我已经在VS2013中创建了一个可以正常工作的MVC项目。在创建它时,VS已经包含了使用LogIn以及寄存器视图的表单和配置。

这里的观点是该视图使用layout.cshtml文件作为母版页。因此,如果我将 [Authorize] 属性放在控制器内的方法运行网站时发生的事情,那就是它显示了LogIn页面,这是正常的。但是使用layout.cshtml作为母版页。

有没有办法在不使用layout.cshtml的情况下在entiry窗口中显示LogIn.cshtml页面?

在web.config中我有:

<authentication mode="Forms">
      <forms loginUrl="Account/Login" timeout="2880" />
    </authentication>

但它不起作用

1 个答案:

答案 0 :(得分:3)

按照惯例,Login.cshtml正在采用适用于_ViewStart.cshtml的布局。

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

如果您不想使用此功能,请添加

@{
    Layout = null;
}

@{
    Layout = "SomeOtherMaster.cshtml";
}

到Login.cshtml页面。

但是,通过更改布局,您将更改所有脚本和CSS引用,因此您需要添加自己的。您应该检查/Views/Shared/_Layout.cshtml以查看您将放弃的内容。