如何将JSON反序列化为List <keyvaluepair <string,string>&gt;设置</keyvaluepair <字符串,字符串>

时间:2014-07-31 20:45:30

标签: c# asp.net asp.net-mvc-4 javascriptserializer

我有一些JSON数据: -

{
    "mail":"mitch@domain.com",
    "givenName":"User",
    "sn":"Name",
    "uid":"mitch",
    "gecos":"User Name"
}

我尝试做的是将其反序列化为List<KeyValuePair<string,string>>

我通常会做一本字典,但是某些键可能会重复 - 这是我将List<KeyValuePair<string,string>>对象传递给System.Web.Script.Serialization.JavaScriptSerializer类时由.NET自动生成的表示形式。

当我将序列化对象插入System.Web.Script.Serialization.JavaScriptDeserializer时,我得到一个空响应。

1 个答案:

答案 0 :(得分:1)

从我所看到的,不应该使用JavaScriptSerializer。自定义其行为的唯一方法是使用JavaScriptConverter类,这将允许您自定义序列化/反序列化过程。不幸的是,两种方法都会为属性传递IDictionary,因此已经合并了重复的名称。您可能希望查看JSON的不同格式或不同的序列化库,例如JSON.net,这样可以更加自定义。