Nodatime如何使用System.Text.Json将ZonedDateTime序列化为ISO-8601格式

问题描述 投票:0回答:1

是否有使用System.Text.Json将ZonedDateTime序列化为ISO 8601字符串的方法?

我目前正在以这种格式输出2020-03-15T15:14:53Z UTC,该格式不符合ISO 8061。

最终目标是将其输入Moment.js以进行进一步格式化

编辑:添加代码段,注意很复杂,仅从DateTimeOffset创建ZonedDateTime

//Incoming Date format "Mon Feb 10 16:46:03 +0000 2020"
var dto = DateTimeOffset.ParseExact(date, "ddd MMM dd HH:mm:ss K yyyy", CultureInfo.InvariantCulture.DateTimeFormat);
var zdt = dto.ToZonedDateTime();
json asp.net-core iso8601 nodatime zoneddatetime
1个回答
0
投票
[如果您要从ZonedDateTime构造DateTimeOffset,我建议您不要这样做,而应该使用OffsetDateTime,它实际上表示您拥有的信息。 (您也可以直接从初始值解析它,而不用通过DateTimeOffset进行解析。)

虽然我没有检查,但我希望OffsetDateTime JSON表示形式为ISO-8601格式。

© www.soinside.com 2019 - 2024. All rights reserved.