LiquidXML DataBinding在导出到XML String时抑制NodeType

时间:2018-04-27 18:42:40

标签: xml liquid-xml

我使用LiquidXML。我有一个XSD文件,这个XSD文件通过DataBinder工具创建了一个Visual Basic .Net项目。 现在我创建类并通过xxx.ToXML导出它们 到目前为止,创建的Xml字符串看起来很好。但是我得到了一些像这样的节点:

<pair>
            <patient xs:type="Patient">
                <id memberShipID="1"/>
                <name>xxx </name>
            </patient>

如何以这种方式创建导出,患者节点不包括xs:type =&#34; Patient&#34;的NodeType?

提前THX

1 个答案:

答案 0 :(得分:1)

您需要在默认XmlSerializationContext中将WriteTypeAttribute设置为False:

VB .Net

LiquidTechnologies.Runtime.Net45.SerializationContext.Default.WriteTypeAttribute = False

<强> C#

LiquidTechnologies.Runtime.Net45.SerializationContext.Default.WriteTypeAttribute = false;

<强> C ++

LtXmlLib16::CSerializationContext::GetDefaultContext().SetWriteTypeAttribute(false);

<强>爪哇

com.liquid_technologies.ltxmllib16.SerializationContext.Default.setWriteTypeAttribute(false);

请注意生成器只为派生类型添加xsi:type。根据您的XML Schema,XML文档中可能需要存在xsi:type,以便解析器知道使用了哪个派生项。这在“Using the xsi:type Attribute”一文中有所描述。