有没有办法让我根据条件在MVC2页面上显示链接(确切地说,用户是否在角色中?)
更新:更多信息
一般来说我还没有任何东西......我只是想知道这样做最好的方法是......
我希望链接显示在site.Master
中 <ul id="menu">
<%
if(true){}
%>
<li><%: Html.ActionLink("Home", "Index", "Home")%></li>
<li><%: Html.ActionLink("View Your Populations", "PopulationInfo", "PatientACO")%></li>
</ul>
答案 0 :(得分:1)
您需要为每个具有UserIsInRole
属性(或其他)属性的页面视图创建一个模型,然后您只需检查它并根据该链接显示链接。
<ul id="menu">
<%
if(true){}
%>
<li><%: Html.ActionLink("Home", "Index", "Home")%></li>
<% if (Model != null && Model.UserIsInRole()) { %>
<li><%: Html.ActionLink("View Your Populations", "PopulationInfo", "PatientACO")%></li>
<% } %>
</ul>
修改强>
视图模型:
public class ViewModel
{
public bool UserIsInRole {get;set;}
}
控制器:
public ActionResult Action()
{
var viewModel = new ViewModel();
viewModel.UserIsInRole = User.IsInRole("Role");
return View(viewModel);
}
查看:
<ul id="menu">
<% if (Model.UserIsInRole) {
<li><% Html.ActionLink("LinkText", "NewAction", "NewController") %></li>
<% } %>
</ul>