我有两个System.Xml.XMlDocument对象,第一个看起来像这样
<NewDataSet>
<Table>
<Table1>
<Name>Aname</Name>
<Table1>
<Table2>
<Val>value</Value>
</Table2>
</Table>
<NewDataSet>
我有第二个XML文档,看起来像这样
<HeaderValues>
<yearValueH>yearValueH</yearValueH>
<CalendarEventH>CalendarEventH</CalendarEventH>
</HeaderValues>
我希望在</Table>
标记之后将第二个文档合并到第一个文档中。到目前为止,任何尝试这样做都会导致许多奇怪的错误,是否有人有任何建议? (最好在VB.NET中回答,但C#也可以)。
我尝试过的一些事情(在VB.NET中)包括(对于所有元素):
Dim yearValueH As XmlNode = xmlA.CreateNode("element","yearValueH","")
yearValueH.InnerText= xmlB.GetElementsByTagName("yearValueH")(0).InnerText
答案 0 :(得分:2)
由于您需要XmlDocument中的解决方案,请尝试以下操作:
string xml1 = "<NewDataSet><Table><Table1><Name>Aname</Name></Table1><Table2><Value>value</Value></Table2></Table></NewDataSet>";
string xml2 = "<HeaderValues><yearValueH>yearValueH</yearValueH><CalendarEventH>CalendarEventH</CalendarEventH></HeaderValues>";
var doc1 = new XmlDocument();
doc1.LoadXml(xml1);
var doc2 = new XmlDocument();
doc2.LoadXml(xml2);
XmlNode newNode = doc1.ImportNode(doc2.DocumentElement, true);
doc1.DocumentElement.AppendChild(newNode);
然后您可以查看新文档:
doc1.InnerXml
答案 1 :(得分:1)
您可以将.XDocument组件用于.Net。 关注this link