From 8c634c0bff80e00f846cffbc1a94252db86aa0fc Mon Sep 17 00:00:00 2001 From: iamkisly Date: Thu, 13 Feb 2025 09:35:41 +0300 Subject: [PATCH] Swap Newtonsoft.Json on System.Text.Json Related with https://github.com/hanabi1224/Programming-Language-Benchmarks/issues/457 --- bench/algorithm/json-serde/1.cs | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/bench/algorithm/json-serde/1.cs b/bench/algorithm/json-serde/1.cs index 38c529a9..5262a260 100644 --- a/bench/algorithm/json-serde/1.cs +++ b/bench/algorithm/json-serde/1.cs @@ -3,8 +3,9 @@ using System.IO; using System.Security.Cryptography; using System.Text; +using System.Text.Json; +using System.Text.Json.Serialization.Metadata; using System.Threading.Tasks; -using Newtonsoft.Json; static class Program { @@ -18,14 +19,16 @@ public static async Task Main(string[] args) } var jsonStr = await File.ReadAllTextAsync($"{fileName}.json").ConfigureAwait(false); - var data = JsonConvert.DeserializeObject(jsonStr); - PrintHash(JsonConvert.SerializeObject(data)); + var jti = JsonTypeInfo.CreateJsonTypeInfo(JsonSerializerOptions.Default); + var data = JsonSerializer.Deserialize(jsonStr, jti); + + PrintHash(JsonSerializer.Serialize(data)); var list = new List(n); for (var i = 0; i < n; i++) { - list.Add(JsonConvert.DeserializeObject(jsonStr)); + list.Add(JsonSerializer.Deserialize(jsonStr, jti)); } - PrintHash(JsonConvert.SerializeObject(list)); + PrintHash(JsonSerializer.Serialize(list)); } private static void PrintHash(string s)