我正在使用ASP.NET MVC 5.我正在创建一个注册页面来注册一个“专家”,我希望它与用户分开。我在预先生成的AspNetRoles表中看到有一个ID和一个Name列。每次我尝试研究这个时,我都会看到如何为管理员创建一个如何创建角色的页面。我只想在我的数据库中获得该角色,然后能够在使用专家注册页面创建用户时将其分配给用户。我不想要一个可以创建角色的页面,我希望能够在visual studio中直接执行此操作。 谢谢。
答案 0 :(得分:1)
试试这个。
private ApplicationUserManager _userManager;
public ApplicationUserManager UserManager
{
get
{
return _userManager ??
HttpContext.GetOwinContext().GetUserManager<ApplicationUserManager>();
}
private set
{
_userManager = value;
}
}
像这样注册用户。
var user = new ApplicationUser {
UserName = "John Doe",
Email = "john.doe@foo.com"
};
// params: username and password
var result = await UserManager.CreateAsync(user, "name_birthday_cheeky");
if (result.Succeeded)
{
UserManager.AddToRole(user.Id, "expert");
//code omitted for brevity
}