2016-08-22 43 views
0

该应用程序是在ASP.NET MVC4中开发的。根据用户的角色和另一个参数显示表的行,ASP.NET MVC4

我有一个表指定文档名称,其类型和状态。 内容显示正常。我想根据分配的角色和文档的状态向用户显示表格的行。

ViewBag.Statuses =新的String [] { “文本”, “文本2”, “text3” 中}

@grid.GetHtml(

      columns: grid.Columns(

       grid.Column(header: "Id", format: @<text><div>@(item.WebGrid.Rows.IndexOf(item) + 1)</div></text>), 
         grid.Column(columnName: "nom", header: "Nom"), 
         grid.Column(columnName: "type", header: "Type", format: (item) => ViewBag.Types[item.type]), 
         grid.Column(columnName: "status", header: "Status", format: (item) => ViewBag.Statuses[item.status]) 


                )) 

回答

0

你需要指定剃须刀的用户类型。这是你的情况最好的地方。尝试类似:

@grid.GetHtml(
columns: grid.Columns(
    @if (User.IsInRole("SystemAdministrator") ||User.IsInRole("Distributor")) 
      { 
       grid.Column(header: "Id", format: @<text> 
      } 
      grid.Column(columnName: "type", header: "Type", format: (item) => ViewBag.Types[item.type]), 
          grid.Column(columnName: "status", header: "Status", format: (item) => ViewBag.Statuses[item.status]) 
相关问题