如何强制ISO格式"YYYY-MM-DDThh:mm:ss.sss"JSON输出
本文关键字:quot ss sss JSON 输出 mm 何强制 ISO YYYY-MM-DDThh 格式 | 更新日期: 2023-09-27 18:07:57
我有一个asp.net WebApi2 api,它以JSON格式返回一些时间戳。时间戳的分辨率为毫秒级。
通常我得到这种格式的时间戳"YYYY-MM-DDThh:mm:ss.sss"
不幸的是,如果时间戳恰好用整秒编码日期,则输出格式为"YYYY-MM-DDThh:mm:ss"
(注意缺少.sss
")
如何在JSON输出上强制ISO格式"YYYY-MM-DDThh:mm:ss.sss"
?
添加一行到WebApiConfig.Register
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
// existing stuff
config.Formatters
.JsonFormatter
.SerializerSettings
.DateFormatString = "yyyy'-'MM'-'dd'T'HH':'mm':'ss.fffK";
}
}
默认格式为"yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK"
,最大输出6dp。我猜小写的f
,它似乎工作。
注意K
是时区(或Z为UTC),它也显示空白未知的日期类型,这就是为什么你没有任何显示在那里。