将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