C# 如何使用Razor在MVC5中创建子导航?

C# 如何使用Razor在MVC5中创建子导航?,c#,asp.net-mvc,html,razor,asp.net-mvc-5,C#,Asp.net Mvc,Html,Razor,Asp.net Mvc 5,为MVC5页面的不同视图创建简单的导航相当容易。声明视图,连接适当的控制器。但是,我如何创建一个子导航/子菜单,只要路线在控制器的范围内,它就始终可见 示例说明: HOME >BLOG< USERS ---------------------------------------------------------------------- ADD ENTRY | >MANAGE ENTRIES< | CONTEN

为MVC5页面的不同视图创建简单的导航相当容易。声明视图,连接适当的控制器。但是,我如何创建一个子导航/子菜单,只要路线在控制器的范围内,它就始终可见

示例说明:

HOME       >BLOG<      USERS
----------------------------------------------------------------------
ADD  ENTRY        |
>MANAGE ENTRIES<  |           CONTENT VIEW OF "MANAGE ENTRIES"
                  |
                  |
                  |
                  |
HOME>BLOG<用户
----------------------------------------------------------------------
添加条目|
>管理条目<|“管理条目”的内容视图
|
|
|
|
虽然主控制器的外观可能仅如下所示:

>HOME<       BLOG      USERS
----------------------------------------------------------------------

           CONTENT VIEW OF "HOME"



 .
>主页

我的第一种方法是使用节(以及布局页面上的RenderSection),但由于每次我都必须在每个视图上声明节,这似乎是非常多余的。

经典解决方案是什么,它可以将菜单节放在主布局中,并将特定视图的内容放在RenderBy部分中


关于RenderSection,由于您将参数required设置为false,因此无需在所有视图中声明该部分。

您可以创建嵌套布局,尽管存在某些限制,但它们仍然可以帮助您减少代码编写