Кто-нибудь нашел хороший способ использовать аннотации данных для предотвращения обновления определенных свойств в документе json patch.
Модель:
public class Entity
{
[DoNotAllowPatchUpdate]
public string Id { get; set; }
public string Name { get; set; }
public string Status { get; set; }
public string Action { get; set; }
}
Логика:
var patchDoc = new JsonPatchDocument<Entity>();
patchDoc.Replace(o => o.Name, "Foo");
//Prevent this from being applied
patchDoc.Replace(o => o.Id, "213");
patchDoc.ApplyTo(Entity);
Логический код - всего лишь пример того, как может выглядеть документ патча, исходящий от клиента, который просто генерирует в C # для целей быстрого тестирования