1

我有一个看起来像这样的课程:

class MyClass {
    public int Id;
    public Dictionary<int, MyClass[]> ChildValues;
}

当我尝试使用 Json.NET 反序列化此类时:

 MyClass x = return JsonConvert.DeserializeObject<MyClass>(s);

我收到错误Expected a JsonObjectContract or JsonDictionaryContract for type 'System.Collections.Generic.Dictionary`2[System.Int32,MyClass[]]', got 'Newtonsoft.Json.Serialization.JsonDictionaryContract'。

此错误消息是什么意思,我该如何解决?

4

2 回答 2

2

首先看一下 s 变量中的 JSON。

于 2009-09-08T21:28:15.460 回答
1

我找到了。问题是来自客户端的 Json 是一个数组而不是字典(这反过来是因为 IE 缓存了脚本文件)。

于 2009-09-08T22:10:25.107 回答