Я читал о JsonPatch и заметил, что единственный способ заставить его работать - это извлечь строку из базы данных, что-то вроде этого:
public void Patch(int id, JsonPatchDocument<SomeDto> patchData)
{
var objectToUpdate = context.GetById(id);
patchData.ApplyUpdatesTo(objectToUpdate);
repository.Save(objectToUpdate);
}
Но я надеваюЭто не нравится, потому что он извлекает все ненужные поля из базы данных.
Что, если я хочу просто обновить SQL, а не выбирать до этого?Это возможно даже с JsonPatch?
Я мог бы сделать это сам, не используя JsonPatch вот так (я использую EntityFramework 6 и ASP.NET Web API 2):
MyEntity entity = new MyEntity { Id = id };
context.MyEntities.Attach(entity);
entity.SomeProperty = newValue;
context.SaveChanges();