如何从 ASP.NET MVC 5(身份)中的另一个(管理员角色)帐户创建新用户帐户
How to create new user accounts from another (admin role) account in ASP.NET MVC 5 (Identity)
我有 ASP.NET MVC 5 应用程序(首先是数据库),具有 Identity 2 提供的标准用户配置文件管理。
有一个 管理员帐户角色,我需要创建另一个用户帐户的管理 (CRUD) 功能(设置名称、电子邮件、密码、角色和其他一些参数 来自另一个(管理员)用户帐户,具有管理员角色)通过网络界面。
如何从另一个帐户(管理员角色)创建新用户帐户?
您可以使用内置的 UserManager 以编程方式创建用户并将他们添加到特定角色。
例如:
var user = new ApplicationUser {
UserName = "new_user",
Email = "user@gmail.com"
};
string password = "secret";
using (var db = new ApplicationDbContext())
{
var store = new UserStore<ApplicationUser>(db);
var manager = new UserManager<ApplicationUser, string>(store);
var result = manager.Create(user, password);
if (!result.Succeeded)
throw new ApplicationException("Unable to create a user.");
result = manager.AddToRole(user.Id, "Administrator");
if (!result.Succeeded)
throw new ApplicationException("Unable to add user to a role.");
}
我有 ASP.NET MVC 5 应用程序(首先是数据库),具有 Identity 2 提供的标准用户配置文件管理。
有一个 管理员帐户角色,我需要创建另一个用户帐户的管理 (CRUD) 功能(设置名称、电子邮件、密码、角色和其他一些参数 来自另一个(管理员)用户帐户,具有管理员角色)通过网络界面。
如何从另一个帐户(管理员角色)创建新用户帐户?
您可以使用内置的 UserManager
例如:
var user = new ApplicationUser {
UserName = "new_user",
Email = "user@gmail.com"
};
string password = "secret";
using (var db = new ApplicationDbContext())
{
var store = new UserStore<ApplicationUser>(db);
var manager = new UserManager<ApplicationUser, string>(store);
var result = manager.Create(user, password);
if (!result.Succeeded)
throw new ApplicationException("Unable to create a user.");
result = manager.AddToRole(user.Id, "Administrator");
if (!result.Succeeded)
throw new ApplicationException("Unable to add user to a role.");
}