我有一个布局页面和一些使用它的页面。但是我想在使用它的一些子页面上实现一个导航控件。所以我想使用另一个嵌套的布局页面。这个是可能的吗?
发布于 2011-11-01 07:26:39
是的,它工作得很好。只需告诉您的布局页面使用另一个布局页面
@{ Layout = "pathToMyOtherLayout"; }
您还可以使用横断面穿透到父布局。例如:
@Section Headers {@RenderSection("Headers")}
发布于 2011-11-01 06:01:40
您可以像链接母版页一样链接页面,在_ViewStart.cshtml中,您将看到布局页面是如何定义的:
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
您可以只将此部分添加到_Layout.cshtml中以引用另一个父级,或者将其添加到单个视图以引用不同的布局视图。
ScottGu有一篇关于Razor Layouts的更多信息的帖子
我在一些电子商务网站上使用这种确切的方法,在结账过程中我不想在视图中有任何干扰(导航等),所以我不想在布局中有一些特殊的情况if checkout
,我做了一个LayoutBrandingOnly
和一个Layout
,它是从它“继承”的,所以我不必重复所有的品牌html。
发布于 2011-11-01 06:06:36
你可以通过使用部分在一个布局页面中很容易地解决这个问题。检查http://weblogs.asp.net/scottgu/archive/2010/12/30/asp-net-mvc-3-layouts-and-sections-with-razor.aspx
https://stackoverflow.com/questions/7960216
复制相似问题