根据JSONs层次结构映射的c#类
注意:这与C#JSON的序列化或反序列化无关 这更多的是关于一个C#类,它将1:1映射到JSON的结构本身。JSON可以是字典(散列)或数组,还可以嵌套(例如:JSON对象作为“值”或JSON对象内的数组元素)。我如何定义一个行为相同的C#类,使其能够将1:1映射到其JSON“等价物”上 顺便说一句,我确实看到了.NET4.5对JSON的一流支持(最终!)。另外,它似乎也可以进行序列化。然而,这是一个密封的类,所以我看不到它的实现 使用源代码Luke根据JSONs层次结构映射的c#类,c#,json,C#,Json,注意:这与C#JSON的序列化或反序列化无关 这更多的是关于一个C#类,它将1:1映射到JSON的结构本身。JSON可以是字典(散列)或数组,还可以嵌套(例如:JSON对象作为“值”或JSON对象内的数组元素)。我如何定义一个行为相同的C#类,使其能够将1:1映射到其JSON“等价物”上 顺便说一句,我确实看到了.NET4.5对JSON的一流支持(最终!)。另外,它似乎也可以进行序列化。然而,这是一个密封的类,所以我看不到它的实现 使用源代码Luke 编辑:似乎.NET4.5是开源的。我在上找到
编辑:似乎.NET4.5是开源的。我在上找到了一个链接,但似乎无法下载源代码。使用损坏的下载尝试了3次。任何其他来源位置?最好从.NET 4.5=>.NET 4.0中移植JSON类,只要类结构中没有任何循环引用,JSON映射就不会有任何问题。但有一些工具可以帮助减少任何歧义。这里有一篇相关的博文可能会有所帮助:将为您提供一个针对JSONDictionary的C#类,您可以在其中存储您想要的任何内容。@Habib:这是一个有用的链接,但问题是关于JSON的泛型表示(请参阅)。该链接为JSON的特定模板创建c#类。@awright18:该类如何映射到[0]?@awright18:好的,有意义。尽管在这种形式下,访问它时需要大量的外部“粘合代码”。要以1:1的形式完全可用,最后一个类(继承自
字典
)需要额外的内部逻辑来清晰地映射到JSON的外部原语(对象、数组)和内部原语(字符串、数字、布尔值、空值)。www.json.net的图表在类设计方面非常清晰。