鉴于此请求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。
答案 0 :(得分:1)
因为它是object
,所以Serializer不知道要将其脱水的类型,您可以强制它使用Dictionary<string,string>
:
JsConfig.ConvertObjectTypesIntoStringDictionary = true;