C# 将日期时间转换为 WCF 日期时间格式

标签 c# json wcf json.net

我使用 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 中日期和时间的首选(事实上的)格式。

另请参阅:On the nightmare that is JSON Dates .

关于C# 将日期时间转换为 WCF 日期时间格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44934054/

相关文章:

c# - 从不同线程调用时,WCF Duplex 回调方法从不执行

c# - MySQL 服务器可以从 C# 应用程序加载数据吗?

javascript - 在 Meteor 启动时向集合中插入数据

javascript - 使用 json.js 字符串化多维数组的问题

c# - 我对 WCF 缺少什么?

asp.net-mvc - 在 ASP.NET MVC 应用程序中托管 WCF 服务?

c# - 收到警告, 'Type Parameter X Hides Interface X'

c# - Rhino - 模拟类而不是覆盖虚拟方法

c# - 如果我的项目被拆分为多个源文件,如何编译 C# 代码?

jquery - 如何仅显示 Twitter 列表中的成员列表及其头像