public IActionResult Create(EditableUserViewModel <UserWithPasswordViewModel> editableViewModel) { if (ModelState.IsValid) { var userViewModel = editableViewModel.UserViewModel as UserViewModel; var userModel = m_mapper.Map <UserModel>(userViewModel); var applicationUser = m_mapper.Map <ApplicationUser>(userModel); var result = m_identityUserManager .CreateAsync(applicationUser, editableViewModel.UserViewModel.Password).Result; if (result.Succeeded) { var roleResult = m_identityUserManager.AddToRolesAsync(applicationUser, editableViewModel.SelectableRoles?.Where(x => x.IsSelected).Select(x => x.Item.Name).ToList()).Result; if (roleResult.Succeeded) { return(RedirectToAction(nameof(View), new { id = applicationUser.Id })); } ModelState.AddModelError( roleResult.Errors.FirstOrDefault()?.Description); //TODO translate by code } ModelState.AddModelError( result.Errors.FirstOrDefault()?.Description); //TODO translate by code } var viewModel = ViewModelBuilder.BuildCreateUserViewModel(ModelState, editableViewModel.UserViewModel); return(View(viewModel)); }
public IActionResult Create() { var viewModel = ViewModelBuilder.BuildCreateUserViewModel(ModelState); return(View(viewModel)); }