仅当用户在特定页面上时才显示部分

问题描述:

我有一个主布局页面,左侧有一个菜单栏,显示到其他页面的链接。我试图在左边的菜单栏下包含一个部分,只有当用户位于该布局中的特定页面上时。仅当用户在特定页面上时才显示部分

Here is another question that is asking for pretty much the same thing.

与讨论的问题是,答案是超过五十岁,和过时的<% %>语法是不是在我的网站工作。

在仍然使用常规@Html.Partial语法的同时,是否有办法做同样的事情?

+0

关于ruby-on-rails的链接问题,不是asp.net-mvc :)。使用'Sections' - [Razor的布局和部分](https://weblogs.asp.net/scottgu/asp-net-mvc-3-layouts-and-sections-with-razor) –

在你的页面布局,要包括你的身边吧:

<div id="header"> 
</div> 

@RenderSection("Sidebar", false) 

<div id="content"> 
    @RenderBody() 
</div> 

<div id="footer"> 
</div> 

虚假意味着它不是必需的部分,所以不需要也不需要包括它的网页。

现在显示的部分,只需将其添加到需要它显示,其他页面相同的布局中不会显示此部分的页面底部:

<h2>This is a page</h2> 

@section Sidebar { 
    <div id="sidebar"> 
     your sidebar.... 
    </div> 
} 

您的全HTML会显示类似这与侧边栏:

<div id="header"> 
</div> 

<div id="sidebar"> 
    your sidebar.... 
</div> 

<div id="content"> 
    <h2>This is a page</h2> 
</div> 

<div id="footer"> 
</div> 

和其他网页将仅仅是:

<div id="header"> 
</div> 

<div id="content"> 
    <h2>This is another page</h2> 
</div> 

<div id="footer"> 
</div> 
+0

这正是什么我需要。谢谢! –