我使用 JsonNet 解析具有 DateTime 属性的 c# 对象,然后将其发布到服务器。但它返回日期格式错误。它要求格式如下:
"/Date(1327572000000-1000)/"
如何将 c# DateTime 转换为这种格式?
最佳答案
既然您询问了如何使用 JSON.NET 以这种格式进行序列化:
// Set the DateFormatHandling wherever you are configuring JSON.Net.
// This is usually globally configured per application.
var settings = new JsonSerializerSettings
{
DateFormatHandling = DateFormatHandling.MicrosoftDateFormat
};
// When you serialize, DateTime and DateTimeOffset values will be in this format.
string json = JsonConvert.SerializeObject(yourDateTimeValue, settings);
但是,我强烈建议您不要使用这种格式,除非您绝对必须这样做,通常是为了与旧代码兼容。 ISO-8601 格式是 JSON 中日期和时间的首选(事实上的)格式。
关于C# 将日期时间转换为 WCF 日期时间格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44934054/