public JsonResult Post([FromBody] TeamViewModel vm) { //Join a team try { if (ModelState.IsValid) { var newTeam = Mapper.Map <Team>(vm); newTeam.Name = vm.Name; //DB insert _logger.LogInformation("Attempting to save a new Team"); _repository.CreateTeam(newTeam); if (_repository.SaveAll()) { Response.StatusCode = (int)HttpStatusCode.Created; return(Json(Mapper.Map <TeamViewModel>(newTeam))); } } } catch (Exception ex) { _logger.LogError("Falied to save new Team", ex); Response.StatusCode = (int)HttpStatusCode.BadRequest; return(Json(new { MessageBody = ex.Message })); } Response.StatusCode = (int)HttpStatusCode.BadRequest; return(Json(new { Message = "Failed", ModelState = ModelState })); }