迁移到ServiceStack我在(反)序列化结构中遇到了序列化问题。在struct上我可以覆盖ToString()并添加静态Parse()方法,但序列化的输出是字符串,转义到JSON。
我更喜欢与类相同的序列化 - 使用DataContract属性将struct序列化为JSON属性的属性。我发现设置JsConfig.TreatValueAsRefType,它用于序列化但不用于反序列化 - 在反序列化期间我在MyStruct中获取默认(空)值。 当我简要地查看源文件时,在我看来,设置根本不用于反序列化。目前我只能使用变通方法来提供Parse()方法,在这里我可以解析json并创建对象。
我是否滥用TreatValueAsRefType作为结构还是尚未完成功能?