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 > ( ) ;