public async Task <IActionResult> CreateGame([FromBody] CreateGameResource resource) { if (!ModelState.IsValid) { return(BadRequest(ModelState.GetErrorMessages())); } var result = await _service.CreateGame(resource); if (!result.Success) { return(BadRequest(result.Message)); } return(Ok(result.Resource)); }
public async Task <CreateGameResponse> CreateGame(CreateGameResource resource) { var game = _mapper.Map <CreateGameResource, Game>(resource); try{ await _repository.CreateGame(game); await _repository.CompleteAsync(); var gameResource = _mapper.Map <Game, GameResource>(game); return(new CreateGameResponse(gameResource)); } catch (Exception ex) { return(new CreateGameResponse($"An error occurred when creating the game: {ex.Message}")); } }