Как временно исключить свойство из сохраняемого в RavenDb? - PullRequest
3 голосов
/ 28 октября 2019

Мне нужно сохранить некоторые данные из пользовательского ввода в RavenDb. Но пока пользователь печатает, некоторые свойства могли измениться, и я не хочу, чтобы их перезаписывали. Поэтому я хочу временно исключить сохранение этого свойства. Это возможно? Я знаю решение с "JsonIgnore", но тогда это свойство будет игнорироваться навсегда.

1 Ответ

2 голосов
/ 01 ноября 2019

Я думаю, что лучше подойти к решению этого вопроса. Вместо того, чтобы пытаться сохранить весь объект и игнорировать изменения в определенном свойстве, почему бы просто не задать свойства, которые вы хотите установить?

Вот соответствующие документы:

https://ravendb.net/docs/article-page/4.2/csharp/client-api/operations/patching/single-document#change-values-of-two-fields

И вот как вы устанавливаете только два свойства, а остальные оставляете как есть:

session.Advanced.Patch<Employee, string>("employees/1", x => x.FirstName, "Robert");
session.Advanced.Patch<Employee, string>("employees/1", x => x.LastName, "Carter");

session.SaveChanges();
...