如何在ASP.NET MVC 5(身份)

时间:2016-07-23 12:43:08

标签: c# asp.net-mvc-5 asp.net-identity-2

我有ASP.NET MVC 5应用程序(数据库优先),标识用户身份管理由身份2提供。

有一个帐户管理员角色我需要创建另一个用户帐户的管理功能(CRUD)(通过Web界面设置名称,电子邮件,密码,角色以及来自另一个(管理员)用户帐户的其他(管理员)用户帐户的一些其他参数) 。

如何从其他帐户创建新用户帐户(管理员角色)?

1 个答案:

答案 0 :(得分:2)

您可以使用内置的UserManager< TUser,TKey>以编程方式创建用户并将其添加到特定角色。

例如:

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.");
}