【发布时间】:2021-03-06 23:57:41
【问题描述】:
如果这个问题已经被问过,我提前道歉,但我找不到任何可以帮助我理解如何解决问题的东西。
问题是,当尝试反序列化特定银行的 camt54 时,我的程序出错了。 调查问题我意识到反序列化器无法转换此标签:
<ToDtTm>2020-11-18T24:00:00+01:00</ToDtTm>
显然我明白为什么。 C# datetime 格式不包含 24:00:00,调试器返回错误:“字符串 '2020-11-18T24:00:00+01:00' 不是有效的 AllXsd 值”
但根据我对 xml 的理解,这是一个可接受的值。
不幸的是,这是发生在我身上的第一个案例。我已经反序列化了很多 camt54,直到现在都没有遇到任何问题。
如何告诉反序列化器正确读取插入到 xml 中的值?
提前谢谢你。 马特奥。
【问题讨论】:
-
嗯。 24?很有趣。
-
我知道...这很愚蠢恕我直言..
-
这是时间的 ISO 8601 格式。在标准的早期版本中允许使用 24:00 表示午夜,但在 2019 年修订版中不允许使用 - 维基百科。另见stackoverflow.com/questions/3556144/…
-
谢谢。所以基本上是使用已弃用标准的 xml 的制造商?
标签: c# xml deserialization