public class MyClass
{
[XmlElement("Date")]
public DateTime Date { get; set; }
}
它被XML序列化为一个文件:
var myClass = new MyClass() { Date = new DateTime(2010, 09, 24) };
new XmlSerializer(typeof(MyClass)).Serialize(fileStream, myClass);
<MyClass>
<Date>2010-09-24T00:00:00</Date>
</MyClass>
之后,创建了新的日期持有者类:
public class MyDate
{
public int Year { get; set; }
public int Month { get; set; }
public int Date { get; set; }
}
在MyClass中使用而不是系统日期时间:
public class MyClass
{
[XmlElement("Date")]
public MyDate Date { get; set; }
}
MyClass myClass = (MyClass)new XmlSerializer(typeof(MyClass)).Deserialize(fileStream);
问题是我不能改变我的班级。我只能更改MyDate类和序列化/反序列化代码。