Ich habe die folgende XML-Datei. Ich möchte einen neuen "Test" kopieren und die ID des Tests ändern. Wie ist es möglich?Knoten kopieren und Wert eines Attributs ändern
Ich kann die Knoten schon kopieren, leider nicht an der richtigen Stelle (siehe Bilder) und ich kann auch die ID nicht ändern. Hat jemand eine Lösung für mich?
Vorher:
Nach:
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load(Before.xml");
XmlNode Set = xmldoc.DocumentElement;
string strXmlQuery = "/Toolings/Testing/Test1";
XmlNode NodeToCopy = Set.SelectSingleNode(strXmlQuery);
XmlNode NewNode = NodeToCopy.CloneNode(true);
NodeToCopy.AppendChild(NewNode);
Set.InsertAfter(NewNode, Set.LastChild);
XPathNavigator navigator = xmldoc.CreateNavigator();
navigator.MoveToRoot();
navigator.MoveToFirstChild();
navigator.MoveToFirstChild();
navigator.MoveToFirstChild();
navigator.MoveToFirstChild();
navigator.SetValue("5678");
xmldoc.Save(After.xml");
Behaupten Sie, die "Vorher" ist richtig? Weil das "After" mehr Sinn macht. – Crowcoder
Am Ende wollte ich das "After". Also das "Nachher" ist richtig. –
Bekam es. Aber willst du wirklich den "Test" erhöhen? Test1, Test2, etc ..? Es wäre kompliziert, Ihre Daten zu verbrauchen, um dies zu tun, sollten sie alle nur "Test" sein. – Crowcoder