Beispiel #1
0
        public async Task <IActionResult> Create([FromBody] RoleCreationRequest request)
        {
            var appRole = new AppRole {
                Id = Guid.NewGuid().ToString(), Name = request.Role
            };
            var result = await _roleManager.CreateAsync(appRole);

            if (result.Succeeded)
            {
                return(Ok("Role created successfully"));
            }

            return(StatusCode(StatusCodes.Status500InternalServerError, new { message = "An error ocurred" }));
        }
        public async Task <IActionResult> CreateRole([FromBody] RoleCreationRequest roleCreationRequest)
        {
            if (roleCreationRequest == null || string.IsNullOrWhiteSpace(roleCreationRequest.Name))
            {
                return(HandleBadRequest("A valid role name needs to be provided."));
            }

            try
            {
                Role role = await RoleService.CreateRole(roleCreationRequest.Name, roleCreationRequest.DomainId);

                return(Created(GetNewResourceUri(role.Id), new RoleResponse(role)));
            }
            catch (EntityAlreadyExsistsException exception)
            {
                return(HandleResourceAlreadyExistsException(exception));
            }
            catch (Exception exception)
            {
                return(HandleUnexpectedException(exception));
            }
        }