PATCH без получения всего объекта с помощью JsonPatch - PullRequest
0 голосов
/ 04 октября 2018

Я читал о 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();
...