簡體   English   中英

將新節點添加為子節點會自動添加xmlns屬性

[英]Adding a new node as a child is automatically adding the xmlns attribute

我正在嘗試修改XML文檔。 XML的結構如下:

<?xml version='1.0' encoding='iso-8859-1'?>
 <Modelo39 xmlns="http://www.dgci.gov.pt/2002/OT" versao="1">
<Rosto>
<QuadroInicio />
<Quadro01>
  <Q01C01>555555555</Q01C01>
</Quadro01>
<Quadro06>
  <Rostoq06T>

  </Rostoq06T>
</Quadro06>
</Rosto>
</Modelo39>

我正在嘗試向Rostoq06T添加一個新節點,如下所示:

<Rostoq06T-Linha numero="1">
<NIF>100000000</NIF>
<CodRend>01</CodRend>
<Rendimento>2500</Rendimento>
<Retido>500</Retido>
</Rostoq06T-Linha>

我正在創建一個名為Rostoq06T-Linha的新元素,並將其正確添加到節點Rosto06T中:

XmlElement node06T = xmlDoc.CreateElement("Rostoq06T-Linha");
node06T.SetAttribute("numero", linha.ToString());
//Here i add the elements to node06T
xmlDoc.DocumentElement.GetElementsByTagName("Rostoq06T").Item(0).AppendChild(node06T);

我的問題是Rosto06T-Linha的生成方式如下:

<Rostoq06T-Linha numero="1" xmlns="">

如果該元素是Rostoq06T的子元素,我不知道為什么將屬性xmlns添加到此節點。

誰能幫我解決這個問題?

因為您創建的Rostoq06T-Linha元素沒有命名空間,即。 空的名稱空間

您必須使用適當的CreateElement重載

XmlElement node06T = xmlDoc.CreateElement("Rostoq06T-Linha","http://www.dgci.gov.pt/2002/OT");

不幸的是,您必須為創建的所有子代指定完整的名稱空間!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM