我存儲對象在我的傳奇數據中有屬性,應該在序列化和反序列化過程中被忽略。我試着用[NonSerialized]和[JsonIgnore]標記這些屬性(並且用[DataContract]註釋這些類,而不是製作這些屬性[DataMember] ...),但似乎什麼也沒有辦法。無論我做什麼,當NServiceBus調用Json.NET來保存傳奇數據時,所有的屬性都會被序列化。我也嘗試爲有問題的對象實現自定義的JsonConverter,並且也被忽略(是的,我用[JsonConverter(typeof(MyConverter))]]註釋對象類型...)NServiceBus RavenDB傳奇persister忽略JsonIgnoreAttribute
Is有一種方法可以讓傳奇持久化忽略傳奇數據中包含的對象中的屬性?作爲參考,我使用NServiceBus 3.2.7,Json.NET 4.5.7和RavenDB build 960.總線配置爲使用RavenDB持久性和傳奇持久性。
我知道你可能不想聽到這個 - 但你爲什麼要這樣做? :-) – 2012-08-15 15:27:47
我有一個複雜的任務,可以細分爲大量較小的任務。較小任務的結果需要結合到整個複雜任務的結果中。因此,我將這些較小任務的結果存儲在傳奇數據中用於此目的。一些屬性不應該被序列化的原因是它們包含了我不想保留的相對較重的數據。我*可以*重構這個傳奇故事,這樣只有相關數據(一個變更集)纔會保存在傳奇數據中,我可能會在後面做這個,但我不明白爲什麼我現在不能只是[JsonIgnore] 。 – ivern 2012-08-15 16:05:30
是的。恐怕我不知道爲什麼NonSerialized被忽略的答案,但如果你明白我的意思,那麼對於我來說沒有任何意義的是你的數據不是傳奇數據。 – 2012-08-15 16:18:55