如何创建像List <string,object>?</string,object>这样的集合

时间:2011-12-25 10:49:49

标签: c# json list serialization json.net

我需要创建一个像List<String,Object>这样的列表,但我似乎无法做到这一点。

我创建了一个类:

public class Pair
{
    public String Key { get; set; }
    public Object Value { get; set; }
}

如果我创建List<Pair>,当我必须将其序列化为JSON时,我的问题就出现了,我得到类似的内容:

{
    "Key": "version",
     "Value": "3.2.1"
},
{
    "Key": "name",
    "Value": "coordinateOperations"
}

虽然我期待:

{
    "version": "3.2.1"
},
{
    "name": "coordinateOperations"
}

我的猜测是我必须找到一种方法来拥有List<String,Object>或控制序列化机制。后者看起来更加强硬,看起来更像是一种技巧,而不是一种真正的解决方案。

此外,我不能拥有Dictionary<String,Object>因为我会重复按键。也许更需要查找。

2 个答案:

答案 0 :(得分:7)

为什么要创建自己的?你可以使用KeyValuePair

List<KeyValuePair<String, Object>> nList = new List<KeyValuePair<String, Object>>();

答案 1 :(得分:0)

如果您的密钥是唯一的,您可以使用OWIN使用的内容,即UPDATE AmazonCustomers SET Category = -1 WHERE ID IN (1, 3, 4, ...); UPDATE AmazonCustomers SET Category = 0 WHERE ID IN (2, 13, 19, ...); UPDATE AmazonCustomers SET Category = 1 WHERE ID IN (7, 17, 20, ...);