MVC3仅基于当前控制器嵌套母版页

时间:2012-01-05 05:47:15

标签: c# asp.net-mvc-3 renderpartial

我想在我正在为自己的知识做的测试项目上进行一些子导航,我想要在partials中做sub子导航,并根据所使用的控制器调用局部渲染。我试图找出其他人如何做到这一点以及确定控制器的最佳方法是在theLayout.cshtml中?

同样,我没有任何特定的东西,我正在使用它(所以没有代码示例)。这只是为了我自己的知识,并不知道实现这一目标的最佳方法。在工作中我们做了一些类似的东西,但它严格来说是CSS而我个人并不喜欢......

我知道renderpartial并且我在整个网站上使用它,但我很好奇它是否被用于确定导航显示和这样做的方法......已经很晚了我很累,所以希望这个说得通。如果没有请问!

1 个答案:

答案 0 :(得分:1)

  

确定控制器的最佳方法是在theLayout.cshtml中吗?

您可以从RouteData

获取当前控制器和操作
@{
    var controller = ViewContext.RouteData.GetRequiredString("controller");
    var action = ViewContext.RouteData.GetRequiredString("action");
}

您的问题非常模糊,因此很难为您提供更具体的细节,但是为了生成导航菜单,您还可以使用自定义html帮助程序甚至整个子操作(Html.Action帮助程序),具体取决于复杂程度。