1

我有一个返回日期的服务。奇怪的是,大多数时候它是这样返回的:/Date(1364227320000)/

但有时它会像这样返回日期/Date(1364050020139-0400)/

当我打开 Visual Studio 调试器时,每个日期看起来都一样(减去时间差异)

什么可以解释这种差异?

4

2 回答 2

2

这是在System.Runtime.Serialization.Json.JsonWriterDelegator.WriteDateTimeInDefaultFormat(). 如果DateTimeKindUnspecifiedLocal,则将 UtcOffset 添加到末尾(-400 部分,表示 Utc - 4 小时)。

于 2013-03-29T17:42:20.550 回答
1

它取决于对象的种类DateTime即其Kind属性的值)。如果您要返回DateTimewith DateTimeKind.Utc,则不会有偏移量。如果日期时间是 kindLocalUnspecified,则会写出偏移量。

您可以在 MSDN 上“Stand-Alone JSON Serialization”页面的“DateTime Wire Format”部分找到有关该格式的更多信息。

于 2013-03-29T17:42:54.740 回答