public async Task <ActionResult> AddRolToUser(MultiRolSelect model, string user) { // Verification if (ModelState.IsValid) { // Initialization. List <RolesViewModel> rolList = ( from r in RoleManager.Roles.ToList() select new RolesViewModel { Id = r.Id, Name = r.Name } ).ToList(); model.SelectedRolesList = rolList.Where(p => model.MultiRolSelectId.Contains(p.Id)).Select(q => q).ToList(); string id = UserManager.Users.First(u => u.Cedula.Equals(user)).Id; var result = IdentityResult.Success; var rols = await UserManager.GetRolesAsync(id); result = await UserManager.RemoveFromRolesAsync(id, rols.ToArray()); if (result.Succeeded) { result = await UserManager.AddToRolesAsync(id, model.SelectedRolesList.Select(r => r.Name).ToArray()); if (result.Succeeded) { var listRols = model.SelectedRolesList.Select(r => new Role { Nombre = r.Name }).ToList(); result = await RolControllerBLL.Instance.RolToUser(listRols, user); if (result.Succeeded) { return(RedirectToRoute("Default")); } } } AddErrors(result); } List <SelectListItem> users = ( from u in UserManager.Users.ToList() select new SelectListItem { Text = u.Cedula, Value = u.Cedula } ).ToList(); ViewBag.Users = users; // Loading drop down lists. ViewBag.RolesList = this.GetRolList(); return(View(model)); }
// // GET: /Manage/RoleToUser public ActionResult AddRolToUser() { List <SelectListItem> users = ( from u in UserManager.Users.ToList() select new SelectListItem { Text = u.Cedula, Value = u.Cedula } ).ToList(); MultiRolSelect model = new MultiRolSelect { MultiRolSelectId = new List <string>(), SelectedRolesList = new List <RolesViewModel>() }; ViewBag.RolesList = GetRolList(); ViewBag.Users = users; return(View(model)); }