Asp.net mvc 我可以在_Layout.cshtml中有条件地呈现部分视图吗?
假设我有一个_Layout.cshtml,其中我呈现了一个左侧边栏,这对于我的网站的每个页面都是通用的。 类似于这些的东西——比如菜单Asp.net mvc 我可以在_Layout.cshtml中有条件地呈现部分视图吗?,asp.net-mvc,partial-views,Asp.net Mvc,Partial Views,假设我有一个_Layout.cshtml,其中我呈现了一个左侧边栏,这对于我的网站的每个页面都是通用的。 类似于这些的东西——比如菜单 <div id="left-sidebar"> @Html.Action("_MenuView", "LeftSideMenu") </div> @动作(“菜单视图”、“左侧菜单”) 我想要的一个功能是添加另一个局部视图,但只在网站的某些部分显示它 例如,在博客部分,我可能想显示一个帖子类别列表或帖子的树状视图 <di
<div id="left-sidebar">
@Html.Action("_MenuView", "LeftSideMenu")
</div>
@动作(“菜单视图”、“左侧菜单”)
我想要的一个功能是添加另一个局部视图,但只在网站的某些部分显示它
例如,在博客部分,我可能想显示一个帖子类别列表或帖子的树状视图
<div id="left-sidebar">
@Html.Action("_MenuView", "LeftSideMenu")
@if ("???")
{
@Html.Action("_BlogTreeView", "BlogEntries")
}
</div>
@动作(“菜单视图”、“左侧菜单”)
@如果(“?”)
{
@动作(“_BlogTreeView”,“blogcentries”)
}
我怎么能这么做?我知道如果我渲染的视图由BlogController返回,我想显示“\u BlogTreeView”。。。我该从哪里开始呢?在布局中,添加此
部分
@RenderSection("blogEntries", false)
然后在要显示局部视图的每个视图中添加以下内容:
@section blogEntries {
@Html.Action("_BlogTreeView", "BlogEntries")
}
为什么不使用分区?在_布局中创建一个部分,并在相关的视图中实现它。这非常有帮助。