Json.NET 不再有超过 120 个依赖项

  • Jonathan Allen
  • 刘子达

2018 年 3 月 1 日

话题:.NET语言 & 开发

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

Json.NET是.NET 的官方的 JSON 解析和序列化库,它取代了 Microsoft 实际提供的库。但是当把 Json.NET 推向.NET Standard 时,出现了一些问题。除了在该平台上无法使用的众多方法之外,在NET Standard 1.3 上的 Json.NET 需要高达 122 个依赖包。随着适用于.NET Standard 2.0 的 Json.NET 11 的发布,这些问题已经得到解决。

巨大的包数量并不是 Json.NET 本身的问题。相反,这是一个依赖于.NET Standard.Library1.6.1 的副作用,而.NET Standard 1.3 和其更早版本就依赖于该库。

Json.NET 11 还添加了一个泛型的JsonConverter <T>。这允许开发人员为单一类型创建自定义序列化的规则,而无需经历复杂的过程和使用样本代码去实现原始的 JsonConverter 类

UnixDateTimeConverter 也是这个版本的新增功能。当需要将日期存储为从 Unix 纪元开始至今的整数时,就可以使用它了。

JSON Path Support

与 SQL 和 XPath 不同的是,除了 2007 年JSON Path 上的博客文章外,还没有关于查询 JSON 数据的标准。随后,像 Json.NET 这样的项目已经添加了自己的扩展。通过暴露 =〜运算符,Json.NET 现在支持 JSON 路径中的正则表达式。

Json.NET 由 James Newton-King 根据 MIT 许可证发布。

查看原文链接Json.NET No Longer Has over 120 Dependencies


感谢冬雨对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们。

.NET语言 & 开发