如何在C#中转换正确的ISO 8601日期

时间:2019-10-27 13:31:13

标签: c# json date datetime

请帮助以下日期格式,如何将其转换为正确的日期时间?

2019-10-22T02:00:00-04:00

不确定将用于转换日期时间的内容。

我刚刚将其传递给变量,因为它是从json获取的。

var parse = JObject.Parse(times);

var dateTime = parse["Date"]["overTime"];

它返回23/10/2019 2:00:00,为什么该日期在23上,但是应该在22上。我该如何返回正确的日期和时间。请您告诉我如何转换日期并解释转换。

2 个答案:

答案 0 :(得分:1)

使用JObject.Parse代替使用DateTimeOffset.Parse解析日期/时间。这样将保留原始时区偏移,而其他解析形式则不会。

答案 1 :(得分:1)

我已经通过使用下面的代码解决了这个问题

JObject example = JsonConvert.DeserializeObject<JObject>(times, new JsonSerializerSettings { DateParseHandling = DateParseHandling.None });

感谢您的回答!