我试图反序列化具有以下节点的XML对象:字符串未被识别为有效的DateTime(UTC有效格式)
<startTime>2012-03-19T11:31:03.000Z</startTime>
<endTime>2012-03-19T11:31:03.000Z</endTime>
这些都是我用反序列化的类属性XML为:
[System.Xml.Serialization.XmlElementAttribute(DataType = "date", ElementName = "startTime")]
public DateTime StartTime { get; set; }
[System.Xml.Serialization.XmlElementAttribute(DataType = "date", ElementName = "endTime")]
public DateTime EndTime { get; set; }
最后,这是我用反序列化XML代码:
Stream resultStream = await response.Content.ReadAsStreamAsync();
var serializer = new XmlSerializer(typeof(T));
return serializer.Deserialize(resultStream) as T;
然而,鳕鱼e会抛出一个异常,告诉我该字符串没有被识别为有效的DateTime对象 - 基本异常说XML文件在(1,1926)处有直接指向两个时间戳的错误。
所有我似乎可以找到有关此错误消息是由格式的错误使用(即在日期字符串中使用错误的特殊字符)造成的。然而,就我而言,这种格式似乎符合MSDN描述的100%。
有人能帮我指出错误吗?
你似乎在说'数据类型=你期待的“日期”*只有一个日期 - 然而你提供了一个日期*和*时间。如果DataType =“dateTime”'会发生什么? –
向我们展示'xml'。 –