从数据库取到数据转换json后,时间格式带上T的解决办法


从数据库取得数据之后,转换成json显示在前台,在转换json时发现yyyy-MM-dd HH:mm:ss格式的日期变成了yyyy-MM-ddTHH:mm:ss,

日与小时之间多出个T字符.这是因为

Newtonsoft.Json转换json导致的;

Newtonsoft.Json产生的默认日期时间格式为: IsoDateTimeConverter 格式

解决办法如下,

引入下面的命名空间

using Newtonsoft.Json;
using Newtonsoft.Json.Converters;

 

//这里使用自定义日期格式,如果不使用的话,默认是ISO8601格式 

IsoDateTimeConverter timeConverter = new IsoDateTimeConverter { DateTimeFormat = "yyyy'-'MM'-'dd HH':'mm':'ss" };

JsonConvert.SerializeObject(list.Tables[0], Formatting.Indented, timeConverter);

这样得到的json数据的日期就不会多出T字符啦

 

 

不做处理时直接转换json就好了

 

要注意的是,转换后的值将会和数据库内的值有些不同.

如果要使值相等,需要带上完整的格式.

IsoDateTimeConverter timeConverter = new IsoDateTimeConverter { DateTimeFormat = "yyyy'-'MM'-'dd HH':'mm':'ss'.'fff" };

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM