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; }
}

 

posted @ 2021-07-18 18:06  LiuzzBK  阅读(44)  评论(0编辑  收藏  举报