public async Task <IActionResult> UpdateUsersInRole(int roleId) { ViewBag.roleId = roleId; var role = await _roleManager.FindByIdAsync(roleId.ToString()); if (role == null) { return(View("StatusCodes/RoleNotFound", roleId)); } var model = new List <UpdateUserRoleViewModel>(); foreach (var user in _userManager.Users.ToList()) { var userRoleViewModel = new UpdateUserRoleViewModel { UserId = user.Id, UserName = user.UserName }; if (await _userManager.IsInRoleAsync(user, role.Name)) { userRoleViewModel.IsSelected = true; } else { userRoleViewModel.IsSelected = false; } model.Add(userRoleViewModel); } return(View(model)); }
public ActionResult EditUserRoles(UpdateUserRoleViewModel model) { //var userId = Request.Form[1].ToString(); //var rolIdler = Request.Form[2].ToString().Split(','); var userId = model.Id; var rolIdler = model.Roles; var roleManager = NewRoleManager(); var seciliRoller = new string[rolIdler.Count]; for (var i = 0; i < rolIdler.Count; i++) { var rid = rolIdler[i]; seciliRoller[i] = roleManager.FindById(rid).Name; } var userManager = NewUserManager(); var user = userManager.FindById(userId); foreach (var identityUserRole in user.Roles.ToList()) { userManager.RemoveFromRole(userId, roleManager.FindById(identityUserRole.RoleId).Name); } for (int i = 0; i < seciliRoller.Length; i++) { userManager.AddToRole(userId, seciliRoller[i]); } return(RedirectToAction("EditUser", new { id = userId })); }
public async Task <IActionResult> EditUserRoles(UpdateUserRoleViewModel model) { //var userId = Request.Form[1].ToString(); //var rolIdler = Request.Form[2].ToString().Split(','); var userId = model.Id; var rolIdler = model.Roles; var roleManager = _membershipTools.RoleManager; var seciliRoller = new string[rolIdler.Count]; for (var i = 0; i < rolIdler.Count; i++) { var rid = rolIdler[i]; seciliRoller[i] = roleManager.FindByIdAsync(rid).Result.ToString(); } var userManager = _membershipTools.UserManager; var user = userManager.FindByIdAsync(userId).Result; var Roles = _membershipTools.UserManager.GetRolesAsync(user).Result; foreach (var identityUserRole in Roles) { await userManager.RemoveFromRoleAsync(user, identityUserRole); } for (int i = 0; i < seciliRoller.Length; i++) { await userManager.AddToRoleAsync(user, seciliRoller[i]); } return(RedirectToAction("EditUser", new { id = userId })); }
public async Task <IActionResult> UpdateUserRole(string Id) { ViewBag.roleId = Id; var role = await roleManager.FindByIdAsync(Id); if (role == null) { ViewBag.ErrorMessage = $"The role with Id { Id } could not be found"; return(View("NotFound")); } ViewBag.roleName = role.Name; List <UpdateUserRoleViewModel> model = new List <UpdateUserRoleViewModel>(); foreach (var user in userManager.Users) { UpdateUserRoleViewModel updateUserRole = new UpdateUserRoleViewModel { UserId = user.Id, Username = user.UserName }; if (await userManager.IsInRoleAsync(user, role.Name)) { updateUserRole.IsSelected = true; } else { updateUserRole.IsSelected = false; } model.Add(updateUserRole); } return(PartialView(model)); }
public async Task <IActionResult> OnGetAsync(string id) { var roles = await _db.Roles.ToListAsync(); var users = await _db.IdentityUser.FirstOrDefaultAsync(m => m.Id == id); if (id.Trim().Length == 0) { return(NotFound()); } if (users == null) { return(NotFound()); } var viewModel = new UpdateUserRoleViewModel { Id = id, Email = users.Email, selectedRole = _userManager.GetRolesAsync(users).Result[0], Roles = roles.Select(x => new SelectListItem { Value = x.NormalizedName, Text = x.NormalizedName }) }; IdentityUser = viewModel; return(Page()); }
public ActionResult UpdateUserRole([FromBody] UpdateUserRoleViewModel model) { if (ModelState.IsValid) { if (_userBll.UpdateUserRole(model.UserId, model.Role)) { return(Ok()); } } return(BadRequest()); }
// GET: /<controller>/ /// <summary> /// Indexes this instance. /// </summary> /// <returns></returns> public IActionResult Index() { UpdateUserRoleViewModel model = new UpdateUserRoleViewModel() { Users = _userManager.Users.Include(u => u.Roles).ToList(), Roles = _roleManager.Roles.ToList() }; var users = _userManager.Users.Include(u => u.Roles).ToList(); var test = _roleManager.Roles.ToList(); var roles = _context.Roles.ToList(); var userRoles = _context.UserRoles.ToList(); //var roles = _roleManager.Roles.ToList(); //var roles = _userManager.GetUsersInRoleAsync(users.); return(View(model)); }
public async Task <IActionResult> UpdateUserRole(UpdateUserRoleViewModel vm) { var user = await _userManager.FindByEmailAsync(vm.UserEmail); if (user != null) { if (vm.Delete) { await _userManager.RemoveFromRoleAsync(user, vm.Role); } else { await _userManager.AddToRoleAsync(user, vm.Role); } return(RedirectToAction("Index")); } return(RedirectToAction("Index")); }
public async Task <IActionResult> UpdateUserRole(UpdateUserRoleViewModel vm) { if (vm.Role != null && vm.UserEmail != null) { var user = await _userManager.FindByEmailAsync(vm.UserEmail); if (vm.Delete) { await _userManager.RemoveFromRoleAsync(user, vm.Role); } else { await _userManager.AddToRoleAsync(user, vm.Role); } return(RedirectToAction("RolesIndex")); } else { ModelState.AddModelError(string.Empty, "You need to select both Role and User"); return(RedirectToAction("RolesIndex")); } }
/// <summary> /// Updates the user role. /// </summary> /// <param name="userId">The user identifier.</param> /// <returns></returns> public ActionResult UpdateUserRole(FormCollection userId) { UpdateUserRoleViewModel model = new UpdateUserRoleViewModel() { Users = _userManager.Users.Include(u => u.Roles).ToList(), Roles = _roleManager.Roles.ToList() }; var users = _userManager.Users.Include(u => u.Roles).ToList(); // prepopulate roles for the view dropdown var list = _context.Roles.OrderBy(r => r.Name).ToList().Select(rr => new SelectListItem { Value = rr.Name.ToString(), Text = rr.Name }).ToList(); ViewBag.Roles = list; var uList = _context.Users.ToList().Select(rr => new SelectListItem { Value = rr.UserName.ToString(), Text = rr.UserName }).ToList(); ViewBag.Users = uList; return(View()); }