我想知道是否有人以前见过这个“问题”以及如何纠正它的潜在解决方案?
我有一个特定的日期格式(microsoftdateformat),在与日期时间字段的SAP网关服务交谈时需要使用该格式。
此代码:
string payload = JsonConvert.SerializeObject(myObject, new JsonSerializerSettings()
{
DateFormatHandling = DateFormatHandling.MicrosoftDateFormat
});
将日期时间字段序列化为所需格式,例如:
"DocumentModifiedDate": "/Date(1533686400000)/"
但我随后需要将JSON转换为jtoken对象,以便将它通过框架传递给我的Web服务。当我转换为jtoken时,日期的格式将改回Atom样式:
var jot = Newtonsoft.Json.Linq.JToken.Parse(payload);
结果是:
"DocumentModifiedDate": "2018-08-08T00:00:00Z"
我尝试使用jtoken.fromObject方法:
var jot = Newtonsoft.Json.Linq.JToken.FromObject(myObject, new JsonSerializer()
{
DateFormatHandling = DateFormatHandling.MicrosoftDateFormat
});
但这似乎没有利用序列化程序设置。
希望有人以前遇到过这种情况,并能提供帮助。
如果您不能在这里提供帮助,那么在node.js中是否有一种简单的方法来执行转换,因为在将转换发送到SAP之前,有机会在Web服务器端执行转换。我不想在等式的web端增加太多的复杂性,所以如果我可以在应用端做,它会更受欢迎。