使用 ASP.net MVC 创建新用户时设置角色
Posted
技术标签:
【中文标题】使用 ASP.net MVC 创建新用户时设置角色【英文标题】:Setting role when creating new user with ASP.net MVC 【发布时间】:2011-07-26 12:40:07 【问题描述】:我正在查看默认的 ASP.net MVC 2 控制器。
如何为注册方法中创建的新用户设置角色?
这是否可能只使用一个简单的属性集,还是我必须做一些特别的事情?
【问题讨论】:
【参考方案1】:只需将下面的第二行添加到您的 AccountController 中:
if (createStatus == MembershipCreateStatus.Success)
FormsService.SignIn(model.UserName, false /* createPersistentCookie */);
Roles.AddUserToRole(model.UserName, "RoleNameHere");
return RedirectToAction("Index", "Home");
编辑:如果您尚未创建角色(您只需创建一次。),它将导致异常。
只需将下面的代码放在 AddUserToRole 方法上方即可。
if (!Roles.RoleExists("RoleNameHere"))
Roles.CreateRole("RoleNameHere")
【讨论】:
谢谢你,它帮助了我。由于 accountcontroller 模板已更改,如果有人可以为 ASP.NET MVC 4 更新此答案,那就太好了。我在 Register 方法中调用WebSecurity.Login
之后添加了新行。 ExternalLoginConfirmation
方法也可能需要更改。以上是关于使用 ASP.net MVC 创建新用户时设置角色的主要内容,如果未能解决你的问题,请参考以下文章
在 Asp.net Identity MVC 5 中创建角色