Xml反序列化执行不必要的初始化
本文关键字:初始化 不必要 执行 反序列化 Xml | 更新日期: 2023-09-27 17:53:04
我有一个包含列表的类。在它的构造函数中,我向列表中添加了一个默认对象。
class A
{
List<B> list;
public A()
{
list = new List<B>();
B b = new B();
list.Add(b);
}
}
但是当XmlSerializer
反序列化包含A
对象的XML文件时,加载的对象在其列表中有两个B
对象。我猜它会再次调用构造函数构造函数会添加下一个B
为什么会这样?我怎样才能避免呢?
尝试重载构造函数。一个不取任何东西,也不向列表中添加任何东西,这就是反序列化时可以使用的方法。另一个取B并将B添加到列表中