public void Details(AspNetUserDetailsViewModel mdl) { var ctx = new ApplicationDbContext(); var RoleManager = new RoleManager<IdentityRole>(new RoleStore<IdentityRole>(ctx)); var userManager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(ctx)); //if(userManager.IsInRole(mdl.User.Id, "Admin")) //{ // mdl.RoleId = RoleManager.FindByName("Admin")?.Id; //} //if(userManager.IsInRole(mdl.User.Id, "NetUser")) //{ // mdl.RoleId = RoleManager.FindByName("NetUser")?.Id; //} var role = RoleManager.FindById(mdl.RoleId); var roles = RoleManager.Roles.ToList(); foreach(var item in roles) { userManager.RemoveFromRole(mdl.User.Id, item.Name); } userManager.AddToRole(mdl.User.Id, role.Name); }
// GET: AspNetUsers/Details/5 public async Task<ActionResult> Details(string id) { AspNetUserDetailsViewModel mdl = new AspNetUserDetailsViewModel(); if(id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } mdl.User = await db.AspNetUsers.FindAsync(id); if(mdl.User == null) { return HttpNotFound(); } mdl.Roles = await db.AspNetRoles.ToListAsync(); var ctx = new ApplicationDbContext(); var RoleManager = new RoleManager<IdentityRole>(new RoleStore<IdentityRole>(ctx)); var userManager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(ctx)); if(userManager.IsInRole(mdl.User.Id, "NetUser")) { mdl.RoleId = RoleManager.FindByName("NetUser")?.Id; } if(userManager.IsInRole(mdl.User.Id, "Admin")) { mdl.RoleId = RoleManager.FindByName("Admin")?.Id; } return View(mdl); }