public IHttpActionResult UpdateProject(int projectId, [FromBody] ProjectActionRequest updateProjectRequest) { Require.Positive(projectId, nameof(projectId)); if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var projectToUpdate = _projectProvider.GetProject(projectId); projectToUpdate.Info = updateProjectRequest.Info; projectToUpdate.AccessLevel = updateProjectRequest.AccessLevel; projectToUpdate.Name = updateProjectRequest.Name; projectToUpdate.ProjectTypes = new HashSet <ProjectType>(updateProjectRequest.ProjectTypes); projectToUpdate.ProjectStatus = updateProjectRequest.ProjectStatus; projectToUpdate.LandingImage = updateProjectRequest.LandingImage; projectToUpdate.Screenshots = new HashSet <Image>(updateProjectRequest.Screenshots); _projectProvider.UpdateProject(projectToUpdate); return(Ok()); }