.NET Core 3.0中新增的JSON API有哪些特性与优势?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2242个文字,预计阅读时间需要9分钟。
为什么需要新的JSON API?JSON.NET大家都在用,但老版本的ASP.NET Core也依赖于JSON.NET。这种依赖会导致一些版本问题:例如,ASP.NET Core某个版本可能需要JSON.NET v10,而另一个库则可能需要不同的版本。
为什么需要新的 JSON API ?
JSON.NET 大家都用过,老版本的 ASP.NET Core 也依赖于 JSON.NET 。
然而这个依赖就会引起一些版本问题:例如 ASP .NET Core某个版本需要使用 JSON .NET v10 ,而另一个库需要使用 JSON.NET v11 ;或者 JSON .NET 出现了一个新版本,而ASP .NET Core 还不能支持这个版本,而您却想使用该版本。
System.Text.Json
随着 NET Core 3.0 的出现,出现了 System .Text.Json 命名空间和它下面一些用于处理 JSON 的类。
特点
这个内置 JSON API 具有与生俱来的高性能、地分配的特点:
JSON .NET 使用 .NET 里面的字符串作为基本数据类型,其实也就是 UTF16 ,而 .NET Core 中新的 JSON API 直接使用数据原始的 UTF8 格式。
新的 JSON API 基于 Span <byte> 这个数据类型来进行操作 JSON 数据,从而具有低分配的特点,这就可以极大的改善吞吐量和内存使用情况。
但是新的JSON API 的特性还不那么丰富,有一些 JSON .NET 具有的特性都还不支持。
本文共计2242个文字,预计阅读时间需要9分钟。
为什么需要新的JSON API?JSON.NET大家都在用,但老版本的ASP.NET Core也依赖于JSON.NET。这种依赖会导致一些版本问题:例如,ASP.NET Core某个版本可能需要JSON.NET v10,而另一个库则可能需要不同的版本。
为什么需要新的 JSON API ?
JSON.NET 大家都用过,老版本的 ASP.NET Core 也依赖于 JSON.NET 。
然而这个依赖就会引起一些版本问题:例如 ASP .NET Core某个版本需要使用 JSON .NET v10 ,而另一个库需要使用 JSON.NET v11 ;或者 JSON .NET 出现了一个新版本,而ASP .NET Core 还不能支持这个版本,而您却想使用该版本。
System.Text.Json
随着 NET Core 3.0 的出现,出现了 System .Text.Json 命名空间和它下面一些用于处理 JSON 的类。
特点
这个内置 JSON API 具有与生俱来的高性能、地分配的特点:
JSON .NET 使用 .NET 里面的字符串作为基本数据类型,其实也就是 UTF16 ,而 .NET Core 中新的 JSON API 直接使用数据原始的 UTF8 格式。
新的 JSON API 基于 Span <byte> 这个数据类型来进行操作 JSON 数据,从而具有低分配的特点,这就可以极大的改善吞吐量和内存使用情况。
但是新的JSON API 的特性还不那么丰富,有一些 JSON .NET 具有的特性都还不支持。

