一尘不染

使用JSON.NET解析JSON键/值对

json

我有一个.NET项目。我正在使用JSON.NET库。我需要使用该库来解析一些JSON。我的JSON看起来像这样:

{"1":"Name 1","2":"Name 2"}

该对象实际上只是键/值对的列表。我试图弄清楚如何使用JSON.NET来1)解析此JSON和2)通过键/值对进行循环。有没有办法做到这一点?如果是这样,怎么办?

我唯一看到的是将反序列化为强类型的对象。

非常感谢!


阅读 245

收藏
2020-07-27

共1个答案

一尘不染

您可以反序列化为 Dictionary<string, string>

var dict = JsonConvert.DeserializeObject<Dictionary<string, string>>(json);
foreach(var kv in dict)
{
    Console.WriteLine(kv.Key + ":" + kv.Value);
}

由于JObject实现IDictionary,因此您也可以简单地使用JObject.Parse

var dict = JObject.Parse(@"{""1"":""Name 1"",""2"":""Name 2""}");
2020-07-27