NServiceBus RavenDB Saga persister忽略JsonIgnoreAttribute

时间:2012-08-15 14:26:53

标签: c# json.net nservicebus ravendb nservicebus3

我在我的saga数据中存储对象,这些对象具有在序列化和反序列化期间应该忽略的属性。我已经尝试用[NonSerialized]和[JsonIgnore]标记这些属性(并使用[DataContract]注释类而不是使这些属性[DataMember] ...)并且似乎没有什么可以做的。无论我做什么,当NServiceBus调用Json.NET来保存saga数据时,所有属性都会被序列化。我也尝试为有问题的对象实现自定义JsonConverter,并且也被忽略(是的,我用[JsonConverter(typeof(MyConverter))注释对象类型] ...)

有没有办法让saga持久性忽略saga数据中包含的对象中的属性?作为参考,我使用NServiceBus 3.2.7,Json.NET 4.5.7和RavenDB build 960.总线配置为使用RavenDB持久性和saga持久性。

1 个答案:

答案 0 :(得分:0)

NServiceBus内化了raven客户端和json.net。这就是为什么这些属性不起作用(因为我们与内部标志合并,它们本质上是不同的类型)。解决方法是使用未合并的nsb核心版本。那说我很好奇为什么你需要这些额外的属性?