是否可以将JSON反序列化为List <myobject <t,k>&gt;使用JSON.Net </myobject <t,k>

时间:2010-01-17 21:43:41

标签: c# generics serialization json.net

我有一个班级:

[Serializable]
    public class KVPair<TKey, TValue>
    {
        public TKey Key { get; set; }
        public TValue Value { get; set; }

        public KVPair(TKey k, TValue v)
        {
            Key = k;
            Value = v;
        }
    }    

我创建:

List<KVPair<string,string>> kvPairs;

使用JSON.Net库我可以序列化列表并产生:

"[{\"Key\":\"Two\",\"Value\":\"2\"},{\"Key\":\"One\",\"Value\":\"1\"}]"

当我将此字符串反序列化回List&gt;我得到了正确的对象数,但它们都是空的。任何建议都会有很大的帮助。

1 个答案:

答案 0 :(得分:4)

我猜你可能需要添加一个无参数构造函数:

public KVPair() {
}

也许JSON.net不知道如何构建你的对象,所以它无声地失败。