NServiceBus RavenDB Сага постоянно игнорирует JsonIgnoreAttribute
Я храню объекты в моих данных саги, у которых есть свойства, которые следует игнорировать во время сериализации и десериализации. Я попытался пометить эти свойства как [NonSerialized], так и [JsonIgnore] (и аннотировать классы с помощью [DataContract], а не задавать эти свойства [DataMember]...), и ничто, похоже, не помогает. Независимо от того, что я делаю, когда NServiceBus вызывает Json.NET для сохранения данных саги, все свойства сериализуются. Я также попытался реализовать пользовательский JsonConverter для рассматриваемых объектов, и это также игнорируется (да, я аннотирую тип объекта с помощью [JsonConverter(typeof(MyConverter))]]...)
Есть ли способ получить постоянство саги, чтобы игнорировать свойство объекта, содержащегося в данных саги? Для справки я использую NServiceBus 3.2.7, Json.NET 4.5.7 и RavenDB build 960. Шина настроена на использование постоянства RavenDB и устойчивости саги.
1 ответ
NServiceBus усваивает как клиент raven, так и json.net. Вот почему эти атрибуты не работают (они по сути разные типы, так как мы объединяем с внутренним флагом). Обходной путь должен использовать только базовую версию nsb, которая не объединена. Тем не менее, мне любопытно, зачем вам эти дополнительные свойства?