NodaTime Interval JSON序列化

Ant*_*arl 6 json iso8601 nodatime

有没有理由说NodaTime JSON.net序列化程序不使用ISO8601时间间隔格式来表示开始和结束时刻?

示例ISO8601时间间隔:

"2007-03-01T13:00:00Z/2008-05-11T15:30:00Z"
Run Code Online (Sandbox Code Playgroud)

NodaTime Complex JSON:

{ Start: "2007-03-01T13:00:00Z", End: "2008-05-11T15:30:00Z" }
Run Code Online (Sandbox Code Playgroud)

ISO8601格式是否不适合NodaTime中的区间概念?

Jon*_*eet 4

NodaTime JSON.net 序列化器不使用 ISO8601 时间间隔格式来表示开始和结束时刻是否有原因?

是的。我在阅读 ISO-8601 时没有发现它。这不是一个很好理由,但却是正确的理由。

ISO8601 格式是否不太适合 NodaTime 中的间隔概念?

不,它非常适合(与 ISO-8601 的其余部分一样好),我们绝对应该使用它。我不认为ISO-8601 指定开始是包容性的,结束是排他性的,但这不一定是问题。

我怀疑我们想要使用的格式是扩展的ISO 格式,以包含亚秒值,与其他所有内容一致,但我怀疑这种扩展相当常见。

在配置 JSON 序列化器时,我们需要将其设为一个选项,这有点麻烦,但我们绝对应该使其可用。

我已经打开了功能请求 270来解决这个问题。