【问题标题】:how to import node in XML如何在 XML 中导入节点
【发布时间】:2015-06-03 18:49:16
【问题描述】:

父 XML

<order>
     <class/>
     <account>
        <saving/>
     </account>
</order>

我想将节点导入到父 xml

节点:

 <data>
     <address/>
 </data>

导入后,最终的xml为

<order>
     <class/>
     <account>
        <saving/>
     </account>
     <data>
         <address/>
     </data>
</order>

请帮帮我

我尝试如下:

 XmlDocument doc = new XmlDocument();
 doc.LoadXml(childXML.InnerXml);
 mlNode newNodeDataset = doc.DocumentElement;

XmlDocument xdoc = new XmlDocument();
xdoc.LoadXml(parentXML);
XmlNode root = xdoc.DocumentElement;  

xdoc.ImportNode(newNodeDataset, true);

它没有抛出任何错误,但它没有导入节点。 我在哪里做错了?

【问题讨论】:

  • 再一次,XmlDocument 在这里似乎无关紧要。同样,您还没有提供 任何代码 来显示您到目前为止所获得的内容。同样,您毫无意义地使用了引用 (&gt;)。 记下 cmets 之前的问题,以帮助您在未来提出更好的问题 - 理想情况下,请阅读 tinyurl.com/stack-hints

标签: c# linq-to-xml xmldocument


【解决方案1】:

您需要做的就是使用Add 方法将元素添加到现有文档根目录中,看起来:

var doc = new XDocument(
    new XElement("order",
        new XElement("class"),
        new XElement("account",
            new XElement("saving")
        )
    )
);

var element = new XElement("data", new XElement("address"));

doc.Root.Add(element);

结果(doc):

<order>
  <class />
  <account>
    <saving />
  </account>
  <data>
    <address />
  </data>
</order>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-11
    • 1970-01-01
    • 2017-05-01
    • 2019-11-19
    • 2018-08-02
    • 1970-01-01
    • 2011-12-18
    • 1970-01-01
    相关资源
    最近更新 更多