在mvc 4中使用自定义角色提供程序设置控制器

时间:2014-03-31 07:24:13

标签: asp.net-mvc-4 asp.net-membership roleprovider

我是自定义角色提供程序和角色的新手。我需要在主页中显示一些功能。

  • 如果管理员进入该页面,它将显示一些按钮,如删除,更改。
  • 如果普通用户登录主页,它将显示一些功能,如查看和更新​​,但不会显示删除和更改功能。

我可以使用JavaScript执行此操作但我需要使用自定义角色提供程序来实现此功能。是否可以使用MVC4?

我搜索了很多网站,但我没有找到如何做到这一点。谁能给我一些例子。

1 个答案:

答案 0 :(得分:1)

您可以使用razor在视图中添加管理区域:

@{if (User.IsInRole("admin"))
    {
        <text>
        @Html.ActionLink("Administration", "Index", "Admin", null, new { @class = currentPage == "admin-index" ? "currentPage" : "" });
        </text>
    }
}

在您的控制器中,您应该确保管理员设置和命令(通过Ajax发布,例如)来自经过身份验证的管理员用户。举个例子:

    [HttpPost]
    [AccessDeniedAuthorize(Roles = "admin")]
    public JsonResult SaveOrder(int StationId, string ca, string items)
    {
         ...[your code]...
    }