public async Task<IActionResult> Create(RoleViewModel model) { try { if (!ModelState.IsValid) throw new Exception("Role is not valid"); var role = new ApplicationRole { Name = model.Name, Description = model.Description}; var result = await _applicationRoleManager.CreateAsync(role); if (!result.Succeeded) { throw new Exception("Can't create the role!"); } var msg = CreateMessage(ControllerActionType.Create, "role", model.Name); return RedirectToAction("Index"); } catch (Exception ex) { var msg = CreateMessage(ControllerActionType.Create, "role", model.Name, ex); return View(model); } }
private async Task<bool> CreateRoles() { if(_context.Roles == null || _context.Roles.Count() == 0) { var role = new ApplicationRole { Name = "Administrator", Description = "Administrator: administration of all the content." }; var result = await _roleManager.CreateAsync(role); if(!result.Succeeded) return false; role = new ApplicationRole { Name = "LibrariesPrincipal", Description = "Libraries principal: principal for all the libraries" }; result = await _roleManager.CreateAsync(role); if(!result.Succeeded) return false; role = new ApplicationRole { Name = "LibraryCoordinator", Description = "Library coordinator: coordinator for a specific library" }; result = await _roleManager.CreateAsync(role); if(!result.Succeeded) return false; role = new ApplicationRole { Name = "LibraryCoordinator", Description = "Library coordinator: coordinator for a specific library" }; result = await _roleManager.CreateAsync(role); if(!result.Succeeded) return false; } return true; }