在复杂对象上使用ToJsv(或ToJson)似乎可以正确序列化,但调用FromJsv不会返回包含所有属性的原始对象。有没有一种简单的方法来调试序列化/反序列化过程以找到丢失数据的原因?
var complexObject = new ComplexObject(); <-- All properties have values
var serialized = complexObject.ToJsv(); <-- Appears to serialize all data
var deserialized = serialized.FromJsv<ComplexObject>(); <-- Some properties missing values
答案 0 :(得分:1)
我找到了我的问题的解决方案,但没有解决更普遍的问题&#34;如何使用ServiceStack调试序列化/反序列化?&#34;
Resharper建议:自动属性可以是get-only。
从属性中删除私有setter破坏了ComplexObject的反序列化。将私有setter添加到属性允许反序列化按预期工作(这是有道理的)。
仍然希望找到一种更好的方法来调试这样的问题。我尝试使用JsConfig.ThrowOnDeserializationError,但我什么也没得到。必须有更好的方法......