public async Task<IActionResult> Create(CreateRoleViewModel model) { if (ModelState.IsValid) { model.RoleName = model.RoleName.Trim(); if (await _roleManager.FindByNameAsync(model.RoleName) != null) { ModelState.AddModelError(string.Empty, T["The role is already used."]); } } if (ModelState.IsValid) { var role = new Role { RoleName = model.RoleName }; var result = await _roleManager.CreateAsync(role); if (result.Succeeded) { _notifier.Success(TH["Role created successfully"]); return RedirectToAction(nameof(Index)); } _session.Cancel(); foreach (var error in result.Errors) { ModelState.AddModelError(string.Empty, error.Description); } } // If we got this far, something failed, redisplay form return View(model); }
public async Task<IActionResult> Create() { if (!await _authorizationService.AuthorizeAsync(User, Permissions.ManageRoles)) { return Unauthorized(); } var model = new CreateRoleViewModel(); return View(model); }