public async Task <UcRegisterUserResponse> Handle(UcRegisterUserRequest message) { var response = await this.userRepository.Create(message.Email, message.UserName, message.Password); UcRegisterUserResponse regResponse; if (response.Success) { regResponse = new UcRegisterUserResponse(response.Id, true); } else { regResponse = new UcRegisterUserResponse(response.Errors.Select(x => x.Description)); } return(regResponse); }
public async Task <ActionResult> Register([FromBody] RegisterUserRequest request) { if (!this.ModelState.IsValid) { return(this.BadRequest(this.ModelState)); } var useCaseRequest = new UcRegisterUserRequest(request.Email, request.Username, request.Password); var response = await this.registerUserUseCase.Handle(useCaseRequest); var contentResult = new JsonContentResult { StatusCode = (int)(response.Success ? HttpStatusCode.OK : HttpStatusCode.BadRequest), Content = JsonSerializer.SerializeObject(response) }; return(contentResult); }