public ActionResult <ValueDto> PartiallyUpdate(int id, [FromBody] JsonPatchDocument <ValueUpdateDto> patchDoc) { if (patchDoc == null) { return(BadRequest()); } Value existingEntity = _valueRepository.GetSingle(id); if (existingEntity == null) { return(NotFound()); } ValueUpdateDto valueUpdateDto = Mapper.Map <ValueUpdateDto>(existingEntity); patchDoc.ApplyTo(valueUpdateDto, ModelState); TryValidateModel(valueUpdateDto); if (!ModelState.IsValid) { return(BadRequest(ModelState)); } Mapper.Map(valueUpdateDto, existingEntity); Value updated = _valueRepository.Update(id, existingEntity); if (!_valueRepository.Save()) { throw new Exception("Updating an item failed on save."); } return(Ok(Mapper.Map <ValueDto>(updated))); }
public ActionResult <ValueDto> Update(int id, [FromBody] ValueUpdateDto updateDto) { if (updateDto == null) { return(BadRequest()); } var item = _valueRepository.GetSingle(id); if (item == null) { return(NotFound()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } Mapper.Map(updateDto, item); _valueRepository.Update(id, item); if (!_valueRepository.Save()) { throw new Exception("Updating an item failed on save."); } return(Ok(Mapper.Map <ValueDto>(item))); }