我的班级看起来像这样:
class MyClass {
public int Id;
public Dictionary<int, MyClass[]> ChildValues;
}
当我尝试使用Json.NET反序列化此类时:
MyClass x = return JsonConvert.DeserializeObject<MyClass>(s);
我收到错误预期JsonObjectContract或JsonDictionaryContract类型'System.Collections.Generic.Dictionary`2 [System.Int32,MyClass []]',得到'Newtonsoft.Json.Serialization.JsonDictionaryContract'。< / em>的
此错误消息的含义是什么?如何解决?
答案 0 :(得分:2)
首先看一下你变量中的JSON。
答案 1 :(得分:1)
我找到了。问题是来自客户端的Json是一个数组而不是字典(而这又是因为脚本文件是由IE缓存的)。