將json字符串轉為實體類對象,遇空值的處理辦法


這幾天用了Framework7框架,提交Form數據時,它可以直接將數據轉為json格式,很方便,然后處理成json字符串,提交到后台。

后台本來用的是LitJson,將json字符串轉換為實體類對象時,發生int,datetime等字段類型空值不能轉換的問題,看了下LitJson的轉換方法,沒有提供更多參數,也就沒有研究它,直接轉用Newtonsoft.Json。

Newtonsoft.Json的JsonConvert.DeserializeObject方法,帶個JsonSerializerSettings參數,網上搜索,settings直接設置成以下這樣,問題解決:

 1 JsonSerializerSettings setting = new JsonSerializerSettings();
 2             JsonConvert.DefaultSettings = new Func<JsonSerializerSettings>(() =>
 3                 {
 4                 //日期類型默認格式化處理
 5                 setting.DateFormatHandling = DateFormatHandling.MicrosoftDateFormat;
 6                     setting.DateFormatString = "yyyy-MM-dd HH:mm:ss";
 7 
 8                 //空值處理
 9                 setting.NullValueHandling = NullValueHandling.Ignore;
10 
11                     //高級用法九中的Bool類型轉換 設置
12                     //    setting.Converters.Add(new BoolConvert("是,否"));
13 
14                     return setting;
15                 });

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM