我正在进行一些开发,我需要在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>
但它不起作用
答案 0 :(得分:3)
按照惯例,Login.cshtml
正在采用适用于_ViewStart.cshtml
的布局。
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
如果您不想使用此功能,请添加
@{
Layout = null;
}
或
@{
Layout = "SomeOtherMaster.cshtml";
}
到Login.cshtml页面。
但是,通过更改布局,您将更改所有脚本和CSS引用,因此您需要添加自己的。您应该检查/Views/Shared/_Layout.cshtml
以查看您将放弃的内容。