如何将视图作为整页调用(忽略渲染体)?

时间:2014-11-05 13:34:29

标签: c# asp.net-mvc razor

我有一个常规应用程序_Layout.cshtml和@RenderBody()来渲染所有视图,但只有Login视图需要渲染为完整页面而不是@RenderBody()。

此致

2 个答案:

答案 0 :(得分:4)

您需要在视图的开头将Layout属性设置为null

因此,您的Login.cshtml文件应该以:

开头
@model YourModel

@{
    Layout = null;
}

答案 1 :(得分:3)

您可能不希望视图没有布局。您可能需要自定义布局(类似于_LayoutFullPage.cshtml

<!DOCTYPE html>
<head>
    <title>SOMETHING HERE ALONG WITH OTHER HEAD ATTRIBUTES</title>
</head>
<body>
    @RenderBody() 
</body>
</html>

然后使用

在视图中使用该布局
@{
    Layout = "~/Views/Shared/_LayoutFullPage.cshtml";
}

其他选项是在cshtml中将视图设置为null(由RePierre建议)或在控制器中调用return PartialView(model);