Yanlib基于.NET 6.0(LTS)。
https://www.nuget.org/packages/tynab.yanlib
PM> NuGetInstall-Package Tynab.YANLib
有关更多详细信息,请参见Wiki
System.Text.json是一个默认的JSON库,该库集成了3.0版的.NET Core和.NET标准。它用于将.NET对象转换为JSON格式,反之亦然,支持解析和生成JSON字符串。
以前,在.NET Framework中,Newtonsoft.json是.NET应用程序中使用的流行JSON库。但是,随着system.text.json的引入,.NET CORE切换到使用此库作为默认选择。
与其他JSON库相比,System.Text.json旨在提供更好的性能和安全性。它支持高级功能,例如对新数据类型(例如SPAN和UTF8JSONREEDER)的平行解析和支持,从而可以更快地数据处理和减少内存使用情况。
关于性能,system.text.json,newtonsoft.json和volo.json都是.NET中的JSON库都是强大的JSON库,但是它们的性能可能会因特定用例而异。
但是,基于在不同环境和场景中进行的性能基准测试,system.text.json通常被认为在这些库中具有最佳性能。例如,根据性能测试,结果表明,与newtonsoft.json相比,system.text.json的json-to-.net对象明显更快,反之亦然的转换时间,尤其是在有大数据的情况下。

但是,Volo.Json还是一个快速轻巧的JSON库,旨在优化性能和可靠性。它建立在新的.NET核心数据类型上,例如SPAN,UTF8JSONREADER,UTF8JSONWRITER,它允许更快的数据处理和减少内存使用。在某些情况下,Volo.json可以提供比System.Text.json和Newtonsoft.json更好的性能。
使用system.text.json值得序列化/序列化时的情况敏感性:
当要序列化与JSON的对象的属性具有不同的资本化时,使用JSON库时可能会出现异常。
为了解决此问题,我们可以根据需要使用JSON库的可选属性来自定义JSON中的属性命名。
以下是使用Jsonserialializaimoptions时配置性能的一些选项:
笔记:
https://yanlib.yamiannephilim.com/api/json/yan-vs-standards?

var dto = json . Deserialize < JsonDto > ( ) ;