以下帖子中的答案:
为我工作很棒。但是,如果我必须将用户分配到Asp .Net Roles列表中,这将如何改变?
我希望能够遍历可用角色列表和渲染复选框,以及如何在模型中单击更新时查看用户分配的角色? (我希望这个问题有道理。)
提前致谢。
答案 0 :(得分:1)
好的,我在不使用html助手的情况下解决了这个问题。 我仍然在寻找HTML助手的答案:)。
模型
public class RolesModel
{
public string Email { get; set; }
public string[] Roles { get; set; }
}
启动视图的控制器代码
public Action Result ShowRoles()
{
model.Roles = Roles.GetAllRoles();
}
Razor View
@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);
}
如果有更清洁/更好的方法,请随时告诉我。