根据用户角色动态创建菜单

时间:2010-04-18 21:41:44

标签: c# asp.net asp.net-mvc-2

如何根据当前用户的“角色”动态创建ASP.NET MVC2母版页中的菜单?

3 个答案:

答案 0 :(得分:3)

最简单,最直接的方法是在视图标记中添加if语句:

<% if (Page.User.IsInRole("Admin")) { %>
   <%= Html.ActionLink("Admin Tools Index", "Index", "Admin") %>
   <%= Html.ActionLink("Admin Dashboard", "Dashboard", "Admin") %>
<% } %>

或者,您可以将与特定角色相关的多个项目分成局部视图:

<% if (Page.User.IsInRole("Admin")) { %>
   <% Html.RenderPartial("AdminMenu"); %>
<% } %>

答案 1 :(得分:1)

我不确定MVC,但在“普通”ASP.NET中,可以在运行时选择MasterPage。

答案 2 :(得分:0)

如果您使用sitemap文件生成菜单,那么您可以在那里进行。如果没有,则取决于。