• Newtonsoft用例


    //序列化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);
                }
                Console.WriteLine(JsonConvert.SerializeObject(dt));

    二、对象转化json

    static void Main(string[] args)
    {
     var reportModel = new ReportModel()
     {
     ProductName = "法式小众设计感长裙气质显瘦纯白色仙女连衣裙",
     TotalPayment = 100,
     TotalCustomerCount = 2,
     TotalProductCount = 333
     };
     
     var json = JsonConvert.SerializeObject(reportModel);
     
     System.Console.WriteLine(json);
    }
    }
     
    public class ReportModel
    {
    public string ProductName { get; set; }
    public int TotalCustomerCount { get; set; }
    public decimal TotalPayment { get; set; }
    public int TotalProductCount { get; set; }
    }

    三、踢掉没有被赋值的字段

    static void Main(string[] args)
    {
     var reportModel = new ReportModel()
     {
     ProductName = "法式小众设计感长裙气质显瘦纯白色仙女连衣裙",
     TotalPayment = 100
     };
     
     var json = JsonConvert.SerializeObject(reportModel, Formatting.Indented);
     
     System.Console.WriteLine(json);
    }

    var json = JsonConvert.SerializeObject(reportModel, Formatting.Indented,
     new JsonSerializerSettings
      {
      DefaultValueHandling = DefaultValueHandling.Ignore
      });

     四、json转化对象

    static void Main(string[] args)
    {
    var json = "{'title':'法式小众设计感长裙气质显瘦纯白色仙女连衣裙','customercount':1000,'totalpayment':100.0,'productcount':10000}";
     
    var reportModel = JsonConvert.DeserializeObject<ReportModel>(json);
    }
     
    public class ReportModel
    {
    [JsonProperty("title")] public string ProductName { get; set; }
    [JsonProperty("customercount")] public int TotalCustomerCount { get; set; }
    [JsonProperty("totalpayment")] public decimal TotalPayment { get; set; }
    [JsonProperty("productcount")] public int TotalProductCount { get; set; }
    }

  • 相关阅读:
    21.09.12模拟 P2809 hzwer 爱折纸
    21.09.13模拟 保存名画
    21.09.13模拟赛 魔法传输
    21.09.13模拟 分割金币
    21.09.13模拟 友谊值
    21.09.10模拟 朗格拉日计数
    21.09.10模拟 雷神领域
    P4551 最长异或路径
    P2894 [USACO08FEB]Hotel G
    NOIP复习(总结套路)
  • 原文地址:https://www.cnblogs.com/liuzz/p/15027233.html
Copyright © 2020-2023  润新知