本文介绍了XmlSerializer将xsi:type替换为节点名称的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
当前XmlSerializer产生以下结构:
Currently XmlSerializer produces the following structure:
<config>
<BaseType xsi:type="DerivedType1" />
<BaseType xsi:type="DerivedType2" />
</config>
有什么方法可以将类型名称放入节点:
Is there any way to make it put type name into node:
<config>
<DerivedType1 />
<DerivedType2 />
</config>
?
推荐答案
好吧,您可以使用XmlElement Attrribute例如覆盖元素名称.
Well you can just override the element name with the XmlElement Attrribute e.g.
[XmlElement("DerivedType1")]
public BaseType : DerivedType1 {get;set;}
if仍然会将xsi:type放进去,并产生更大的混乱...
if will still put the xsi:type in though, and generate even greater confusion...
您的班级长什么样?
这篇关于XmlSerializer将xsi:type替换为节点名称的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!