ASP.NET MVC - 不同角色的菜单

时间:2011-02-07 01:17:35

标签: asp.net-mvc-3

我正在编写我的第一个MVC 3应用程序(在ASP.NET中),我不知道如何(应该)显示不同用户的菜单。

我的应用程序创建为MVC3 Web应用程序,菜单如下所示:

<div id="menucontainer">
            <ul id="menu">
                <li>@Html.ActionLink("Home", "Index", "Home")</li>
                <li>@Html.ActionLink("Info", "Info", "Home")</li>
            </ul>
</div>

我创建了两种角色:用户和管理员。现在,我想为用户(项目,个人资料)和管理员(管理项目,管理帐户,管理新闻)显示另一个链接。

我应该怎么做?

1 个答案:

答案 0 :(得分:7)

我找到了解决方案:

<div id="menucontainer">
            <ul id="menu">
                <li>@Html.ActionLink("Home", "Index", "Home")</li>
                <li>@Html.ActionLink("Info", "Info", "Home")</li>
                @if ( Request.IsAuthenticated && HttpContext.Current.User.IsInRole
( "user" ) ) {
                     <li>Projects link</li>
                     <li>Profile link</li>
                }
                @if ( Request.IsAuthenticated && HttpContext.Current.User.IsInRole
( "admin" ) ) {
                     <li>Manage Projects link</li>
                     <li>Manage Accounts link</li>
                }
            </ul>
</div>