为整个网站创建导航

时间:2012-12-21 16:03:46

标签: asp.net-mvc asp.net-mvc-3

我正在学习asp.net mvc 3,我正在尝试为我的整个应用程序创建一个通用菜单。我明白我可以在_Layout.cshtml文件中做到这一点。女巫是每个页面的默认模板。

现在我已经查看了添加模板的部分_Layout.cshtml但是从我可以收集的内容中我需要在每个视图中定义该部分。

我已经拥有了访问单独类中定义的数据的逻辑。我需要的是调用方法将返回Dictionary<string , List<string>>,然后通过循环显示数据。

Aldo我可以通过使用razor语法在Index.cshtml文件中直接执行此操作我相信必须有更好的方法

那么有没有办法创建一个可以在_Layout.cshtml中添加的模板?

2 个答案:

答案 0 :(得分:1)

只是在寻找类似的东西。希望部分视图是您的答案,这是一个您可以重复使用并粘贴在任何页面上的模板。找到的信息here

答案 1 :(得分:1)

为每个视图的菜单创建一个部分可以工作,但我认为另一种方法可能更容易保持。在您的布局上,使用@Html.Partial呈现您的菜单。然后在该局部视图上,您​​可以在一个位置上进行各种操作,例如数据库访问。

这是一篇关于如何做到这一点的文章: http://techbrij.com/981/role-based-menu-asp-net-mvc