【发布时间】:2012-04-05 21:05:42
【问题描述】:
我有一些带有站点结构的基本布局。在这个默认布局中,我定义了页眉标签、正文结构和页脚:
<html>
<head>...</head>
<body>
<div id="sidebar">...</div>
<div id="entry">@RenderSection("Entry", true)</div>
<div id="footer">...</div>
</body>
每个控制器中的每个操作都在其视图中定义自己的入口部分。
<!-- in View/Index.cshtml -->
@section Entry {
Hello from Index action.
}
<!-- in View/Uploads.cshtml -->
@section Entry {
Hello from Uploads action.
}
<!-- in View/Users.cshtml -->
@section Entry {
Hello from Users action.
}
但我也想为每个控制器定义不同的侧边栏。如果我将 @RenderSection("SideBar", true) 放在主布局中,我必须为每个控制器操作重复侧边栏代码。我也无法在主布局中定义侧边栏设计代码,因为我想为每个控制器使用不同的 sibebars(但我想为控制器中的每个操作使用相同的侧边栏)。
如何在不重复每个视图的侧边栏设计代码的情况下解决这个问题?
我找到了解决方案https://stackoverflow.com/a/5573970,但它需要为每个控制器复制基础站点结构。
感谢您的回答,抱歉我的英语不好:(。
【问题讨论】:
标签: asp.net-mvc razor