How to convert json to NameValueCollection

前端 未结 3 1325
谎友^
谎友^ 2020-12-11 06:29

How could you convert a string of JSON to a C# NameValueCollection simply, preferably without using a 3rd party parser?

3条回答
  •  情话喂你
    2020-12-11 07:05

    I'm not sure why everyone is still recommending JSON.NET for deserialization of JSON. I wrote a blog post on how to deserialize JSON to C#.

    In short, it's like this:

    using System.Web.Script.Serialization;
    
    var jss = new JavaScriptSerializer();
    var dict = jss.Deserialize>(jsonText);
    
    NameValueCollection nvc = null;
    if (dict != null) {
      nvc = new NameValueCollection(dict.Count);
      foreach (var k in dict) {
        nvc.Add(k.Key, k.Value);
      }
    }
                        }
    var json = jss.Serialize(dict);
    Console.WriteLine(json);
    

    Be sure to add a reference to System.Web.Extensions.dll.

    Note: I usually deserialize to dynamic, so I'm assuming that NameValueCollection would work. However, I haven't verified if it actually does.

提交回复
热议问题