//Создание пользователя public JsonResult CreateUser(TMUserPM data) { using (ApplicationDbContext db = new ApplicationDbContext()) { try { var roleManager = new RoleManager <IdentityRole>(new RoleStore <IdentityRole>(db)); var UserManager = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(db)); var newUser = new ApplicationUser { UserName = data.UserName, Email = data.Email, PersonalName = data.PersonalName }; var chkUser = UserManager.Create(newUser, data.Password); //Add default User to Role Admin if (chkUser.Succeeded) { UserManager.AddToRole(newUser.Id, data.Role); return(Json(new { Id = newUser.Id })); } else { StringBuilder sb = new StringBuilder(); foreach (var error in chkUser.Errors) { sb.Append(error); sb.Append(" "); } return(Json(new { ErrorMessage = sb.ToString().Trim() })); } } catch (Exception e) { return(Json(new { ErrorMessage = e.Message })); } } }
//Назначение роли пользователю public JsonResult AssignRole(TMUserPM data) { using (ApplicationDbContext db = new ApplicationDbContext()) { try { var roleManager = new RoleManager <IdentityRole>(new RoleStore <IdentityRole>(db)); var UserManager = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(db)); ApplicationUser user = db.Users.Single(m => m.Id == data.Id); UserManager.RemoveFromRoles(user.Id, UserManager.GetRoles(user.Id).ToArray()); UserManager.AddToRole(user.Id, data.Role); return(Json(new { Id = user.Id })); } catch (Exception e) { return(Json(new { Message = e.Message })); } } }