【问题标题】:XmlSerializer not deserializing DateTimeXmlSerializer 不反序列化 DateTime
【发布时间】:2014-03-28 15:21:57
【问题描述】:

我有一个使用 XmlSerializer 反序列化的 XML 文档。文档上的其他属性工作正常,但有一个元素特别是不起作用:

<StartDate>2014-03-21T00:00:00</StartDate>

这在 C# 中的 POCO 中定义为:

[XmlElement("StartDate")]
private DateTime StartDate { get; set; }

当我反序列化文档时,StartDate01/01/0001 12:00:00 AM。我认为标准的 XML 日期/时间格式是 YYYY-MM-DDTHH:MM:SS?那么为什么这不能正确反序列化呢?

注意:我无法控制正在反序列化的 XML 文档。它来自第三方系统。

【问题讨论】:

标签: c# xml datetime serialization


【解决方案1】:

将访问修饰符从private 更改为public

[XmlElement("StartDate")]
public DateTime StartDate { get; set; }

XmlSerializer can only serialize public fields and properties.

【讨论】:

  • 哦,哇,我怎么错过了?我所有的其他财产都是公开的。愚蠢的错误!谢谢!
猜你喜欢
  • 1970-01-01
  • 2023-04-05
  • 1970-01-01
  • 1970-01-01
  • 2015-02-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多