• [.Net 5.0] 1.原装的Json序列化反序列化


    服务器端已经用了好久的.Net core2.1,最近项目有些dll需要服务器、客户端共享,想着把原来的客户端从.Net Framework4.7.2升级到.Net Core3.1,顺便也把服务器端升级成3.1。

    顺手建了个项目,十分习惯的引用了 Newtonsoft.Json,然后发现包Newtonsoft.Json的前面出现了黄底三角形的黑色感叹号

    什么情况!哦,原来目标框架缺省变成了.Net 5.0了,估计Newtonsoft.Json的版本有冲突。试了一下能用,但是看着黄色三角形难受。想着似乎有个原装的东东,试了一下,效果不错,也比原来.Net Framework的写法简单了(没有自成一体,基本跟newtonsoft一样)。

    手痒,简单测试了一下

            static void Main(string[] args)
            {
                Stopwatch sw = Stopwatch.StartNew();
                TestTextJson();
                Console.WriteLine(sw.ElapsedMilliseconds);
                sw.Restart();
                TestNewtonsoftJson();
                Console.WriteLine(sw.ElapsedMilliseconds);
                Console.Read();
            }
            static void TestTextJson()
            {
                for(int i=0;i<10000;i++)
                {
                    var str = System.Text.Json.JsonSerializer.Serialize(new { a = 10, b = "abcd" });
                }
            }
    
            static void TestNewtonsoftJson()
            {
                for (int i = 0; i < 10000; i++)
                {
                    var str =Newtonsoft.Json.JsonConvert.SerializeObject(new { a = 10, b = "abcd" });
                }
            }
    
    

    结果:
    原装的耗时只有newtosoft的四分之一

  • 相关阅读:
    我是5型
    现在的我,有两个状态。我要去找第三个
    什么是BNF范式,什么又是EBNF范式?
    又是好久不写日志
    语料库资源汇总
    原生js与css3结合的电风扇
    JavaScript基础2
    JavaScript基础1
    JavaScript基础4
    JavaScript基础3
  • 原文地址:https://www.cnblogs.com/catzhou/p/13714952.html
Copyright © 2020-2023  润新知