【发布时间】:2017-06-01 19:15:11
【问题描述】:
我从 rest api 得到以下 json 结果,我正在使用 Newtonsoft.Json 将其反序列化为 c# 对象。
{
"d": {
"results": [
{
"Aufnr": "4000103",
"Workdate": "/Date(1482796800000)/",
"Beguz": "PT07H30M00S",
}
]
}
}
Aufnr 和 Workdate 正在使用 String 和 DateTime,但我不知道要为 Beguz 使用哪种数据类型
我尝试了TimeSpan 和DateTime 并得到了这个错误:Error converting value "PT07H30M00S" to type 'System.TimeSpan'. Path '[0].Beguz'
有什么想法吗?
【问题讨论】:
-
为什么字符串会出错?
-
那是一个字符串,不是吗?我猜它包含一个时间(07:30:00),但该格式是一个字符串。您可以向对象添加属性以将其“转换”为日期时间,或使用自定义转换器
-
对我来说这看起来像是时间跨度格式。您需要手动解析它
-
@J.Steen “远未达到标准化格式” - is ISO 8601 standardized enough? ;)
-
@CodeCaster 废话,在发布该评论之前,我正在查看 ISO8601 - 我承认非常简短 - 但错过了!我非常糟糕。