public async Task <IActionResult> AddUserToRole(RoleManageUsersViewModel model) { //Find the user User user = await userManager.FindByIdAsync(model.UserId); if (user != null) { var result = await userManager.AddToRoleAsync(user, model.RoleName); if (result.Succeeded) { return(RedirectToAction("ManageUsers", new { ID = model.RoleId })); } } TempData["ErrorMessage"] = "Unable to add the selected user."; return(RedirectToAction("ManageUsers", new { ID = model.RoleId })); }
public async Task <IActionResult> RemoveUserFromRole(RoleManageUsersViewModel model, string userId) { //Find User User user = await userManager.FindByIdAsync(userId); //If finding user was successful if (user != null) { var result = await userManager.RemoveFromRoleAsync(user, model.RoleName); if (result.Succeeded) { return(RedirectToAction("ManageUsers", new { ID = model.RoleId })); } } TempData["ErrorMessage"] = "Unable to delete the selected user."; return(RedirectToAction("ManageUsers", new { ID = model.RoleId })); }
public async Task <IActionResult> ManageUsers(string id) { IdentityRole role = await roleManager.FindByIdAsync(id); RoleManageUsersViewModel model = new RoleManageUsersViewModel { RoleId = role.Id, RoleName = role.Name, AvailableUsers = userManager.Users.ToList() }; foreach (User user in userManager.Users) { if (await userManager.IsInRoleAsync(user, role.Name)) { model.RoleUsers.Add(user); } } model.AvailableUsers = model.AvailableUsers.OrderBy(u => u.FullName).ToList(); model.RoleUsers = model.RoleUsers.OrderBy(r => r.FullName).ToList(); return(View(model)); }