当你的才华不能撑起你的野心时,就是你该选择学习的时候了!

C# System.Text.Json vs Newtonsoft.Json

        [Test]
        public void Test()
        {
            try
            {
                var i = 100;
                switch (i)
                {
                    case int code when code >= 500:
                        break;
                }

                var queryParameters = new Dictionary<string, string>();
                queryParameters.Add("ApplicantName", "Demo");
                queryParameters.Add("ApplicationDate", DateTime.Now.ToString());
                queryParameters.Add("ApplicationNumber", DateTime.Now.ToString("yyyyMMddHHmm"));

                var postJson1 = Newtonsoft.Json.JsonConvert.SerializeObject(queryParameters);
                var postJson2 = System.Text.Json.JsonSerializer.Serialize(queryParameters);
                var eq1 = postJson1 == postJson2;

                var responseObj1 = System.Text.Json.JsonSerializer.Deserialize<Dictionary<string, string>>(postJson1);
                var responseObj2 = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, string>>(postJson2);
                var eq2 = responseObj1.Equals(responseObj2);

                var postJson3 = Newtonsoft.Json.JsonConvert.SerializeObject(responseObj1);
                var postJson4 = System.Text.Json.JsonSerializer.Serialize(responseObj2);
                var eq3 = postJson3 == postJson4;

                throw new Exception("Test");
            }
            catch (Exception ex)
            {
                _logger.LogError("Test exception:{0}", ex.ToString());
            }
        }

 

posted @ 2022-03-25 16:30  hofmann  阅读(239)  评论(0)    收藏  举报