如何在c#中导航任何JSON树?

jua*_*uan 5 c# parsing json .net-3.5

我需要导航Json结构,因为我将使用导航XML XmlDocument.

结构未知,我需要迭代节点来解析一些数据.

这可能吗?
我知道我可以使用JavaScriptSerializer它将其反序列化为已知类型,但事实并非如此,因为我可以收到任何有效的json.

我正在使用.NET 3.5(SP1),目前无法升级到4.0.
我升级到.NET 4.0以使用动态类型(这是令人敬畏的代码)

Mat*_*zer 3

阅读这篇文章:

它向您解释了一种将 JSON 解析为内部有字典的动态对象的方法。

那么,使用 LINQ 迭代字典会很好,不是吗?

--- 或者如果您使用 .NET 3.5... --- ;)

为什么不实现像“ToDictionary”这样的扩展方法?

您可以接收 JSON 文本,稍后使用正则表达式进行解析,并将属性和值拆分到字典中,所有操作都使用建议的扩展方法完成。

其工作原理示例:

IDictionary<string, object> deserializedJson = jsonText.ToDictionary();
Run Code Online (Sandbox Code Playgroud)

适合您的需求吗?

--- 再一次尝试(现在您有更多选择)!---

在 CodePlex 上查看这个开源项目:

它具有 LINQ-to-JSON,因此您可以读取和写入 JSON。