【发布时间】:2010-09-30 05:06:47
【问题描述】:
将 JSON 数据解析为 .NET 对象的最佳方法是什么?我正在尝试帮助我的一位程序员朋友,他正在尝试使用 ASP.net 将 JSON 字符串中的一些数据转储到数据库中。是否有任何预构建的脚本可以实现这一点?
提前感谢任何帮助。
【问题讨论】:
将 JSON 数据解析为 .NET 对象的最佳方法是什么?我正在尝试帮助我的一位程序员朋友,他正在尝试使用 ASP.net 将 JSON 字符串中的一些数据转储到数据库中。是否有任何预构建的脚本可以实现这一点?
提前感谢任何帮助。
【问题讨论】:
.NET Framework 3.5 有一个JavaScriptSerializer 类可以简化反序列化。您还可以使用第三方库,例如JSON.NET。
【讨论】:
实际上你应该看看DataContractJsonSerializer,因为 JavaScriptSerializer 在 .NET 3.5 框架中被列为 Obsolete。
不可否认,ScottGu 表示这可能是一个错误,将来可能会恢复。
【讨论】:
如果您使用的是 .NET 3.5,您可能不需要第三方库。可以使用 JavaScriptSerializer 类(只是重复前面提到的内容),但您也可以访问 DataContractJsonSerializer,它为 CLR 对象和 JSON 之间的映射提供了不同的模型。
【讨论】:
可以说最快的方法是使用JSON#,它可以避免反射和相关的性能开销——这在 Web 应用程序中可能很重要。它还可以让您对解析过程本身进行更多控制。
【讨论】: