JSON反序列化结果中的奇怪内容

时间:2013-09-23 22:07:16

标签: servicestack json-deserialization servicestack-text

鉴于此请求DTO

public class CreateRecordRequest {
    public Dictionary<string, object> Record { get; set; }
}

当我调用传递此JSON的服务时

{
    "Record": {
        "File": {
            "name": "DSC_3493_4_5.jpg",
            "extension": ".jpg",
            "size": 596002,
            "rawFile": {}
        },
        "Notes": "",
        "Type": ""
    }
}

File具有反序列化值"{"。由于ServiceStack无法知道哪个对象File映射到,我很好奇它为什么不将它反序列化为字典("{"是无法解释的)。定制这样的单个值的反序列化的最简单方法是什么?我正在使用Kendo的上传控件,这是它提交的JSON。

1 个答案:

答案 0 :(得分:1)

因为它是object,所以Serializer不知道要将其脱水的类型,您可以强制它使用Dictionary<string,string>

JsConfig.ConvertObjectTypesIntoStringDictionary = true;