XML反序列化DateTime格式化

5
我有一个XML元素,需要包含年份、月份、日期、小时、分钟、秒和毫秒的DateTime信息。
稍后,我需要通过XMLDeserializer将该XML元素转换为DateTime对象。
我知道DateTime格式转换存在一些问题,我的问题是,我应该以什么DateTime格式编写XML元素,以便在通过XMLDeserializer反序列化后,可以顺利地将其转换为DateTime对象。
我希望得到这样的答案:{0:MM/dd/yy H:mm:ss zzz} 或者其他确保可用的格式。
2个回答

7

在内部,XmlSerializer 使用 XmlConvert 进行转换,它使用以下格式转换 DateTime

yyyy-MM-ddTHH:mm:ss.fffffffzzzzzz

无论如何,请使用ISO 8601格式。在.NET中,您可以使用o格式说明符:
dateTime.ToString("o")

0

我曾面临同样的问题。我的解决方法是创建一个类的对象并为日期时间属性赋值,然后序列化该对象以获取XML输出。这帮助我找到了在XML文档中应该以何种形式提供日期时间字段进行反序列化。

它期望以下格式的日期字段。

2017-06-21T00:00:00+05:30


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接