我正在尝试将对象序列化为XML文件,但我收到了上述错误.
问题似乎是包含基类列表的对象,但是由从基类派生的对象填充.
示例代码如下:
public class myObject
{
public myObject()
{
this.list.Add(new Sw());
}
public List<Units> list = new List<Units>();
}
public class Units
{
public Units()
{
}
}
public class Sw : Units
{
public Sw();
{
}
public void main()
{
myObject myObject = new myObject();
XmlSerializer serializer = new XmlSerializer(typeof(myObject));
TextWriter textWriter = new StreamWriter ("file.xml");
serializer.Serialize (textWriter, myObject);
}
Run Code Online (Sandbox Code Playgroud)
例如,一个对象只包含一个List<Units>由继承自Unitsclass(Sw)的派生对象填充的对象.
很抱歉没有提供我的实际代码,但涉及的对象非常复杂,这似乎是对象的唯一部分,它不会成功序列化 - 并且只有当列表包含派生类时.
我怎样才能正确序列化这样的类?