【问题标题】:Anything new in .Net 4.5 to process better JSON? [closed].Net 4.5 中有什么新东西可以处理更好的 JSON 吗? [关闭]
【发布时间】:2012-11-21 10:00:37
【问题描述】:

.NET 4.5 和 VS2012 中的 JSON 处理有什么新东西会比 DataContractJsonSerializer 更好吗?我见过一些关于 System.JSON 的东西。但它更好吗?

我知道也有 JSON.NET,但我不确定是否可以向我的项目添加另一个 .dll。

【问题讨论】:

  • 在什么方面更好?此外,Json.Net 是一个不错的选择。也许您应该了解是否“允许”添加它。还有 JavaScriptSerializer 类,但它存在于 System.Web.Script.Serialization 中——你在网络领域做任何事情吗? msdn.microsoft.com/en-us/library/…
  • 我认为 JavaScriptSerializer 应该通过 DataContractJsonSerializer 被贬低和替换(从 NET 3.5 开始)。我会请求网络服务并解析他们的回复。
  • 我只需要说:“不允许添加另一个 dll?”在现代开发世界中,使用多个最好的开源支持库(不仅仅是 .net 框架)是站在他人肩膀上并取得更多成就的最佳方式。 (Nuget == 太棒了)
  • 微软在 WebAPI、MVC 等中使用 JSON.NET。它不是 .NET Framework 的一部分,因为它是由某个人 (James Newton-King) 进行的独立开源开发。我的意思是,没办法:使用它。
  • @Gero 它在 3.5 中已弃用,但随后在 3.5 SP1 中恢复。这两个班级都有自己的加分和减分。 danrigsby.com/blog/index.php/2008/05/28/…

标签: c# .net json visual-studio-2012


【解决方案1】:

查看此链接:

Feature Comparison - Json.NET, DataContractJsonSerializer & JavaScriptSerializer

Json.NET、DataContractJsonSerializer 和 JavaScriptSerializer 之间有很好的功能对比。看看它,然后根据您的要求决定使用哪一个。

另外,检查一下:

ASP.NET MVC 4 & Json.NET :

我们(.Net 团队)现在使用并支持流行的 Json.NET 序列化程序 处理 JSON 数据。 Json.NET 是默认的 JSON 序列化器 由 ASP.NET Web API 使用,它包括对数据协定的支持, 匿名类型、动态类型、日期、时间跨度、对象引用 保存,缩进,骆驼套管和许多其他有用的 序列化功能。

【讨论】:

    【解决方案2】:

    你总是可以使用System.Web.Script.Serialization.JavascriptSerializer - 我不知道为什么越来越多的人不使用它,它已经有一段时间了。

    http://msdn.microsoft.com/en-us/library/system.web.script.serialization.javascriptserializer.aspx

    【讨论】:

    • 在链接页面上,微软现在说你应该使用 Json.NET 而不是 JavaScriptSerializer。恭敬地...
    • 因为不如Json.Net
    • 该页面上的另一个更新:“对于 .NET Framework 4.7.2 及更高版本,使用 System.Text.Json 命名空间中的 API 进行序列化和反序列化。对于早期版本的 .NET Framework,使用 Newtonsoft.Json。这种类型旨在为支持 AJAX 的应用程序提供序列化和反序列化功能。"
    猜你喜欢
    • 2011-02-08
    • 1970-01-01
    • 2011-07-29
    • 2021-03-08
    • 1970-01-01
    • 2012-10-18
    • 1970-01-01
    • 1970-01-01
    • 2010-12-28
    相关资源
    最近更新 更多