用XmlSerializer 序列化TimeSpan问题
2011-10-11 14:03
267 查看
今天在做个wp7的demo,发现xml序列化的时候TimeSpan这个字段总是为TimeSpan.Zero,很是郁闷,怎么整都不行,换成double格式的就可以。我就尝试在网上查找相关资料,看到Gildor Wang 有篇文章,才真正的确信,真的有这个问题:TimeSpan用XmlSerializer 序列化的时候不管用。现在把原文发上来:
今天在用XmlSerializer序列化一个类时发现一个TimeSpan类型的属性内容始终为空,后来实验发现Timespan类型对象的序列化结果总是空的,虽然还不清楚原因,但是在StackOverflow上看到了不错的一个解决方法:
其实也就是用一个long的对应值(Ticks)来代替TimeSpan序列化。
今天在用XmlSerializer序列化一个类时发现一个TimeSpan类型的属性内容始终为空,后来实验发现Timespan类型对象的序列化结果总是空的,虽然还不清楚原因,但是在StackOverflow上看到了不错的一个解决方法:
[Serializable] public class MyClass { // Local Variable private TimeSpan m_TimeSinceLastEvent; // Public Property - XmlIgnore as it doesn't serialize anyway [XmlIgnore] public TimeSpan TimeSinceLastEvent { get { return m_TimeSinceLastEvent; } set { m_TimeSinceLastEvent = value; } } // Pretend property for serialization [XmlElement("TimeSinceLastEvent")] public long TimeSinceLastEventTicks { get { return m_TimeSinceLastEvent.Ticks; } set { m_TimeSinceLastEvent = new TimeSpan(value); } } }
其实也就是用一个long的对应值(Ticks)来代替TimeSpan序列化。
相关文章推荐
- C# XML反序列化成类时(XmlSerializer)报 System.IO.FileNotFoundException: 未能找到文件的问题
- 指定存储位置/Bitmap内存溢出解决/解决Bitmap无法序列化问题/输入流转Bitmap
- .NET Core中使用Redis与Memcached的序列化问题详析
- 关于android传递对象Parcelable序列化的问题
- spring data redis serializer SerializationException 序列化问题
- 内部类序列化问题
- 解决Python自带的json序列化工具不能序列化datetime类型数据问题
- C# 二进制序列化(BinaryFormatter),Xml序列化(XmlSerializer),自己模拟写一个Xml序列化过程。
- .Net反序列化漏洞之XmlSerializer
- C# XML反序列化与序列化举例:XmlSerializer
- boost序列化问题(一)
- 聊聊序列化(一)关于序列化协议的一些思考和问题
- 通过XmlSerializer 实现XML的序列化与反序列化
- WCF传输List<object>时序列化问题
- WCF序列化65536大小限制的问题
- Delphi XE10 序列化 TDictionary 为 JSON 的问题
- jQuery使用serialize()表单序列化时出现中文乱码问题的解决办法
- 使用XmlSerializer序列化List对象成XML格式(list对象序列化)
- WCF问题集锦:未按照DataMember定义的名称序列化对象
- java 的序列化和反序列化的问题