MVC如何包含没有布局信息的视图

时间:2013-08-02 21:57:08

标签: asp.net-mvc-3 asp.net-mvc-4

我正在尝试引用视图,但不希望视图附带所有页眉和页脚,因为viewstart引用了布局页面。当我有一个弹出窗口时,它还会显示标题中的菜单项。有没有办法不包括layout.cshtml?

3 个答案:

答案 0 :(得分:4)

可以直接在视图中或基于调用者指定布局。

例如,如果您的ActionMethod返回如下:

return View();

视图将使用布局呈现。但是,如果ActionMethod返回如下:

return PartialView();

然后渲染的视图将没有布局。

但是,这可以在视图中重写。在您的视图中,如果ViewBag.Layout为null,则不会包含布局。相反,如果ViewBag.Layout具有将使用布局的值,则无论视图如何被调用。出于这个原因,大多数视图不会直接设置ViewBag.Layout,而是将其保留在调用者处以指定意图。

希望他的帮助。

答案 1 :(得分:3)

您所要做的就是将布局显式设置为null。

@{ Layout = null; }

答案 2 :(得分:1)

将其放在视图的标题中

@{ Layout = null; }

或类似的东西