如何让Json.net序列化日期时间类似于JavaScriptSerializer

本文关键字:日期 时间 类似于 JavaScriptSerializer 序列化 net Json | 更新日期: 2023-09-27 18:10:17

我的代码库已经使用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?

如何让Json.net序列化日期时间类似于JavaScriptSerializer

您可以使用DateFormatHandling.MicrosoftDateFormat

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