string'3/18/09 10:16 PM'不是有效的AllXsd值
显然,读者不喜欢从响应XML传入的这种格式。
想知道如果我可以重新格式化这个。 尝试使用以下代码与我的XmlReader
转换为DateTime
:
reader.ReadContentAsDateTime();
Xml读者通常期望以特定格式的date/时间; 你可以使用XmlConvert
自己使用它:
string s = XmlConvert.ToString(DateTime.Now); DateTime when = XmlConvert.ToDateTime(s);
如果你正在使用其他的东西,你必须把它作为一个string读取,并使用DateTime.TryParseExact
(或类似的)来指定实际的格式string:
string s = reader.ReadContentAsString(); DateTime when = DateTime.ParseExact(s, "M/d/yy hh:mm tt", CultureInfo.InvariantCulture);
如果您使用的是XmlSerializer
,您可以使用shim属性来进行转换 – 让我知道如果这是你在做什么…
根据XML 模式规范,date时间值应该是ISO8601格式,例如
2009-03-13T22:16:00