我有一个来自MVC4的默认互联网应用程序模板,我想根据用户登录添加一些指向<nav>
标签的链接。
即所有用户都有默认导航面板,但如果是管理员登录,则应该有管理产品库存的额外链接。
现在它看起来像是(来自_Layout.cshtml):
<nav>
<ul id="menu">
<li>@Html.ActionLink("Home", "Browse", "Product")</li>
...
</ul>
</nav>
我需要以某种方式插入新的ActionLink。我试图在默认布局中创建一个if
语句,但它不起作用。如何在<li>
内添加额外的<nav>
代码?我不熟悉JavaScript或JQuery,但可以使用MVC功能吗?
答案 0 :(得分:1)
是的,这可以使用剃刀语法
来实现 <nav>
<ul id="menu">
<li>@Html.ActionLink("Home", "Browse", "Product")</li>
@if( User.IsInRole("Admin") ){
<li>@Html.ActionLink("Admin", "...", "...")</li>
}
</ul>
</nav>