【发布时间】:2016-07-22 10:34:51
【问题描述】:
我对序列化 XML 有疑问。我有一个具有 DateTime 属性的对象,其中毫秒值为 990。但是,当我查看输出的字符串时,它显示如下...
<ReadingsDateTime>2016-07-04T10:10:00.99Z</ReadingsDateTime>
用于将其转换为 xml 的代码如下,这是怎么回事,我找不到发生这种情况的原因。
string xml;
try
{
var serializer = new XmlSerializerFactory().CreateSerializer(typeof(T), xmlNamespace);
using (var memoryStream = new MemoryStream())
{
var settings = new XmlWriterSettings
{
Indent = false,
NamespaceHandling = NamespaceHandling.OmitDuplicates,
CloseOutput = false,
WriteEndDocumentOnClose = true,
};
using (var xmlWriter = XmlWriter.Create(memoryStream, settings))
{
serializer?.Serialize(xmlWriter, obj);
}
memoryStream.Seek(0, SeekOrigin.Begin);
using (var steamReader = new StreamReader(memoryStream))
{
xml = steamReader.ReadToEnd();
}
}
}
catch (Exception ex)
{
throw new ApplicationException("Unable to convert to XML from an object", ex);
}
return xml;
【问题讨论】: