使用MVC4为Razor中的Asp.Net角色创建复选框

使用MVC4为Razor中的Asp.Net角色创建复选框,razor,html-helper,roles,asp.net-mvc-4,checkboxfor,Razor,Html Helper,Roles,Asp.net Mvc 4,Checkboxfor,答案如下: 对我很有用。但是,如果我必须将一个用户分配给Asp.Net角色列表,这种情况会发生什么变化 我希望能够遍历可用角色列表和呈现复选框,以及如何查看用户在单击“从模型更新”时分配给哪些角色?(我希望这个问题有意义) 提前谢谢。好的,我不用html助手就解决了这个问题我仍在寻找HTML助手的答案:) 模型 用于启动视图的控制器代码 public Action Result ShowRoles() { model.Roles = Roles.GetAllRole

答案如下:

对我很有用。但是,如果我必须将一个用户分配给Asp.Net角色列表,这种情况会发生什么变化

我希望能够遍历可用角色列表和呈现复选框,以及如何查看用户在单击“从模型更新”时分配给哪些角色?(我希望这个问题有意义)


提前谢谢。

好的,我不用html助手就解决了这个问题我仍在寻找HTML助手的答案:)

模型

用于启动视图的控制器代码

    public Action Result ShowRoles()
    {
      model.Roles = Roles.GetAllRoles();
    }
剃刀视图

    @foreach (string role in Model.Roles)
    {
      <input type="checkbox" name="Roles" value="@role" checked="@Roles.IsUserInRole(@role)"       />@role
    }

一如既往,如果有更干净/更好的方法,请让我知道。

我是这个论坛的新手,说“提前谢谢”有什么不对吗?(我仍在学习:)敬礼和标语是不受欢迎的。看见
    @foreach (string role in Model.Roles)
    {
      <input type="checkbox" name="Roles" value="@role" checked="@Roles.IsUserInRole(@role)"       />@role
    }
    public ActionResult AccountManagement()
    {
      if (Roles.GetRolesForUser().Length > 0 )
        Roles.RemoveUserFromRoles(model.Email, Roles.GetRolesForUser());

      if (model.Roles != null && model.Roles.Length > 0)
        Roles.AddUserToRoles(model.Email, model.Roles);
    }