我正在编写我的第一个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>
我创建了两种角色:用户和管理员。现在,我想为用户(项目,个人资料)和管理员(管理项目,管理帐户,管理新闻)显示另一个链接。
我应该怎么做?
答案 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>