我对 JSON 很陌生,我需要解析一些 API 提供的内容。一个快速的谷歌搜索出现了JSON.NET,所以我现在尝试使用它来将此 JSON 解析为一个列表对象。首先,JSON.NET 是最好的库吗?
这就是我想要做的:例如,我有一个名为 Item 的类。json 有许多“元素”(如果它们被称为),每个包含 3 个字段:一个名为 id 的整数、一个名为 name 的字符串和一个名为 creationTime 的日期时间。我想将 json 中的所有这些 Item “元素”解析为 Item objects 列表。我在 Item 类中创建了 3 个字段来匹配 JSON。如何使用 JSON.NET 做到这一点?
我试过了:
List<Item> fav = (List<Item>)new JsonSerializer().Deserialize(new JsonReader((TextReader)new StreamReader(response.GetResponseStream())));
但它似乎不起作用。我收到一个转换错误 - 它只是无法将它处理成一个列表附件,但我什至不确定它是否能够将 JSON 处理成一个 Item 类(JSON.NET 的文档不是很好,但我我明天将对其进行大量调试)。
你能给我一些示例代码来解释我如何用 JSON.NET 解析它吗?
谢谢!
更新:顺便提一下,我的项目将针对 .NET Framework 2.0,所以我使用的是 JSON.NET 的旧版本:1.3.1。是否有任何巨大的优势可以使项目值得转换为 .NET 3.5,同时削弱最低系统要求?
更新 #2:我决定在 System.Web.Extensions.dll 中使用 JavascriptSerializer 类而不是 JSON.NET,关于此的问题发布在这里。谢谢!