我的问题很简单。
假设我们有一个 Foo 类。并具有 T 属性。
public class Foo<T>
{
public T Property { get; set; }
}
我想在其中实现 IXmlSerializable,我的问题是我不知道要模仿标准的 XmlSerialization。我真的不知道如何像标准的 XmlSerlalization 那样编写这个属性。
更新:我这样做了,但它不起作用
public class Foo<T> : IFoo
where T : IXmlSerializable
{
public T Value { get; set; }
}
public class FooA : Foo<string> { }
public class FooB : Foo<int> { }
public class FooC : Foo<List<Double>> { }
当我序列化这个类(A、B 和 C)时。我想要这样的东西:
使用头等舱:
<FooA>
<Value>StringDemo</Value>
</FooA>
使用第二类:
<FooB>
<Value>2</Value>
</FooB>
使用第三类:
<FooC>
<Value>
<ArrayOfDouble xsi:..>
<Double>3.1416</Double>
<Double>4.2</Double>
</ArrayOfDouble>
</Value>
</FooC>
像这样的东西是我想要的,我不想在所有这些中实现自定义 XmlSerializer,我的意思是标准序列化使用的默认值。