解决WebApi,Mvc返回json数据遇见日期带T

我们用webapi自带的json序列化时,遇见数据库datetime类型的日期中间会多加一个T,就像2017-09-09 22:11:26.267,而经过自带的json处理后会变成2017-09-09T22:11:26.267

解决办法:

我们可以看到自带的json有三个重载:

第一个content就是要序列化的内容,第二个就是序列化配置,第三个就是编码。在这里我们只要进行序列化的日期配置成我们想要的即可。在需要配置的方法中添加如下代码。

GlobalConfiguration.Configuration.Formatters.JsonFormatter.SerializerSettings.Converters.Add(
                new Newtonsoft.Json.Converters.IsoDateTimeConverter()
                {
                    DateTimeFormat = "yyyy-MM-dd hh:mm:ss"
                }
            );

因为有很多地方都需要用,所以我们还可以把它配置成全局的。把上述代码添加在App_Start的WebApiConfig.cs里面

用的时候只需给自带json序列化方法的第二个参数即可:

这样我们就可以正确的得到自己想要的时间了。

猜你喜欢

转载自blog.csdn.net/qq_39402334/article/details/83650062