VB.Net如何使用XmlSerializer构建具有多个名称空间的xml文件

时间:2018-08-01 11:30:53

标签: xml vb.net serialization namespaces xml-namespaces

我想通过序列化vb.net中的对象来构建xml文件。

我很难构建名称空间部分

这就是我想要的样子:

<?xml version="1.0" encoding="utf-8"?>
<ns1:IntInscrDoc xmlns:ns1="http://revenu.gouv.qc.ca/R502.ITSV.schema.sch_ServiceInscription/015.002.013" xmlns:ns2="http://R599.SCH.SuiviBiztalk.sch_SuiviDem" xmlns:ns0="http://revenu.gouv.qc.ca/R502.schema.sch_ReferenceInscription/015.002.013" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <SysDemnd>PA</SysDemnd>
  <IdDem>aaa</IdDem>
  <RepertFich>asasas</RepertFich>
  <DossiersInterne>
     ...
  </DossiersInterne>
</ns1:IntInscrDoc>

这是我现在所做的:

<?xml version="1.0" encoding="utf-8"?>
<IntInscrDoc xmlns:ns0="http://revenu.gouv.qc.ca/R502.schema.sch_ReferenceInscription/015.002.013" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns2="http://R599.SCH.SuiviBiztalk.sch_SuiviDem">
  <SysDemnd>PA</SysDemnd>
  <IdDem>aaa</IdDem>

使用此:

    Dim ns As New XmlSerializerNamespaces
            ns.Add("ns1", "http://revenu.gouv.qc.ca/R502.schema.sch_ReferenceInscription/015.002.013")
            ns.Add("ns2", "http://R599.SCH.SuiviBiztalk.sch_SuiviDem")
            ns.Add("ns0", "http://revenu.gouv.qc.ca/R502.schema.sch_ReferenceInscription/015.002.013")
            ns.Add("xsi", "http://www.w3.org/2001/XMLSchema-instance")

aXmlSerializer.Serialize(objStreamWriter, objetASerialiser, pXmlSerializerNamespaces)

我还不知道为什么ns1不出现在命名空间中,我也不知道如何拥有

"<ns1:IntInscrDoc"

任何帮助都非常感谢,谢谢!

0 个答案:

没有答案