public IActionResult Post([FromBody] ProjectViewModel portfolioProject) { if (ModelState.IsValid) { try { var newProject = Mapper.Map <Project>(portfolioProject); //Save to the database _logger.LogInformation("Attempting to save a new project"); _repo.AddOrUpdatePortfolioProject(newProject); Response.StatusCode = (int)HttpStatusCode.Created; return(Json(Mapper.Map <ProjectViewModel>(newProject))); } catch (Exception ex) { _logger.LogError("Failed to Save new project", ex); Response.StatusCode = (int)HttpStatusCode.BadRequest; return(Json(new { Message = ex.Message })); } } Response.StatusCode = (int)HttpStatusCode.BadRequest; return(Json(new { Message = "Failed to Save new project", ModelState = ModelState })); }