zoukankan      html  css  js  c++  java
  • C#中的Json序列化

    核心思想:

      利用nuget下载“Newtonsoft.Json”包,调用其中的方法可以json化各种对象。反序列化调用“JsonConvert.DeserializeObject<DataTable>()”方法。

      例:

    string str_json;
                List<Person> ps;
                //初始化数据库对象
                var d1 = new myDatabase();
                //初始化一个普通类对象
                var p1 = new Person() { Xm = "张大力", Nl = 20 };
                //初始化一个DataTable对象
                DataTable dt = new DataTable();
                dt.Columns.Add("Age", Type.GetType("System.Int32"));
                dt.Columns.Add("Name", Type.GetType("System.String"));
                dt.Columns.Add("Sex", Type.GetType("System.String"));
                dt.Columns.Add("IsMarry", Type.GetType("System.Boolean"));
                for (int i = 0; i < 4; i++)
                {
                    DataRow dr = dt.NewRow();
                    dr["Age"] = i + 1;
                    dr["Name"] = "Name" + i;
                    dr["Sex"] = i % 2 == 0 ? "" : "";
                    dr["IsMarry"] = i % 2 > 0 ? true : false;
                    dt.Rows.Add(dr);
                }
                //分别序列化输出结果
                str_json =JsonConvert.SerializeObject(d1.t1);
                Console.WriteLine(str_json);
                Console.WriteLine();
                //随便反序列化一个
                ps = JsonConvert.DeserializeObject<List<Person>>(str_json);
                str_json = JsonConvert.SerializeObject(p1);
                Console.WriteLine(str_json);
                Console.WriteLine();
                str_json = JsonConvert.SerializeObject(dt);
                Console.WriteLine(str_json);
                Console.WriteLine();
                //输出反序列化的东西
                foreach (var item in ps)
                {
                    Console.WriteLine($"{item.Xm}	{item.Nl}");
                }
                Console.ReadKey();
  • 相关阅读:
    windows2003 如何配置ASP网站
    如何在asp.net中获取GridView隐藏列的值?
    GridView.RowCommand 事件中获取当前行的信息
    模块导入导出
    API / DOM
    HTTP(搁置)
    npm
    链接(跳转)<routerlink> 和 路由实例Router
    elementui
    vuex
  • 原文地址:https://www.cnblogs.com/wanjinliu/p/11703109.html
Copyright © 2011-2022 走看看