如何让Json.net序列化DateTime类似于JavaScriptSerializer?

时间:2014-06-24 17:00:45

标签: c# json.net javascriptserializer

我的代码库已经使用JavaScriptSerializer很长时间了,现在我打算迁移到Json.Net。我看到DateTime序列化两者的工作方式不同。

Console.WriteLine(new JavaScriptSerializer().Serialize(DateTimeOffset.UtcNow));

Output:"\/Date(1403629024695)\/"

Console.WriteLine(JsonConvert.SerializeObject(DateTimeOffset.UtcNow));

Output: "2014-06-24T16:57:04.6954145+00:00"

有没有办法让Json.net序列化类似于JavaScriptSerializer?

1 个答案:

答案 0 :(得分:4)

您可以使用DateFormatHandling.MicrosoftDateFormat

Console.WriteLine(JsonConvert.SerializeObject(DateTimeOffset.UtcNow, 
                                              new JsonSerializerSettings() { DateFormatHandling = DateFormatHandling.MicrosoftDateFormat }));