我有以下对象图:
public class BaseType
{
}
public class DerivedType : BaseType
{
}
当我将DerivedType传递给XmlSerializer时,我需要让它反映在BaseType而不是DerivedType上。有没有办法用属性控制它而不在DerivedType上实现IXmlSerializer?
答案 0 :(得分:0)
如果您可以控制序列化程序实例化,只需将带有派生类型对象的Type []作为extraTypes传递。否则,添加
[XmlInclude(typeof(Derived))]
到基类定义。输出XML看起来与传递基本实例完全相同,除了带有派生类型名称的xsi:type属性。
我认为这就是你要求的......