public async Task <IActionResult> CreateAsync(ModifyRoleViewModel modifyRoleViewModel) { if (!ModelState.IsValid) { var pulledViewModel = await _modifyRoleViewModelFactory.CreateAsync(modifyRoleViewModel); return(View("Create", pulledViewModel)); } var roleDto = _mapper.Map <RoleDto>(modifyRoleViewModel); try { await _roleService.CreateAsync(roleDto); } catch (InvalidServiceOperationException e) { ModelState.AddModelError(string.Empty, e.Message); var pulledViewModel = await _modifyRoleViewModelFactory.CreateAsync(modifyRoleViewModel); return(View("Create", pulledViewModel)); } _logger.LogDebug($"Create new role with name {roleDto.Name}"); return(RedirectToAction("Index", "Home")); }
public async Task <IActionResult> Edit(ModifyRoleViewModel modifyRole) { IdentityResult result; if (ModelState.IsValid) { IdentityRole role = await _roleManager.FindByIdAsync(modifyRole.RoleId); role.Name = modifyRole.RoleName; result = await _roleManager.UpdateAsync(role); //if (!result.Succeeded) //{ // AddErrors(result); //} foreach (string userId in modifyRole.IdsToAdd ?? new string[] { }) { //ApplicationUserViewModel user = _applicationUserAppService.GetById(userId); var user = _userManager.FindByIdAsync(userId); if (user != null) { result = await _userManager.AddToRoleAsync(user.Result, modifyRole.RoleName); //if (!result.Succeeded) //{ // AddErrors(result); //} } } foreach (string userId in modifyRole.IdsToRemove ?? new string[] { }) { //ApplicationUserViewModel user = _applicationUserAppService.GetById(userId); var user = _userManager.FindByIdAsync(userId); if (user != null) { //result = await _applicationUserAppService.RemoveFromRoleAsync(user, modifyRole.RoleName); result = await _userManager.RemoveFromRoleAsync(user.Result, modifyRole.RoleName); if (!result.Succeeded) { //AddErrors(result); } } } } if (ModelState.IsValid) { return(RedirectToAction("Index")); } return(View(modifyRole.RoleId)); }
private static ModifyRoleViewModel CreateModifyRoleViewModel() { var viewModel = new ModifyRoleViewModel(); return(viewModel); }