Hinzufügen von untergeordneten Knoten mit der Klasse c # Xdocument

9

Ich habe eine XML-Datei wie unten angegeben.

%Vor%

Ich möchte die Child-Element-Datei hinzufügen: Zeichen mit xDocument.So, dass meine endgültige XML wie unten angegeben wäre

%Vor%

Code in c # Ich habe versucht, mit XDocument Klasse ist unten angegeben.

%Vor%

In der Zeile " Document.Add(new XElement(ns + "Character")); " bekomme ich einen Fehler:

"This operation would create an incorrectly structured document." .

Wie kann ich den Knoten unter " file:Characters " hinzufügen.

    
TVSuser1654136 29.07.2013, 05:45
quelle

2 Antworten

12

Sie versuchen, ein zusätzliches file:Character element direkt in den Stamm einzufügen. Das möchten Sie nicht tun - Sie möchten es vermutlich unter dem file:Characters -Element hinzufügen.

Beachten Sie auch, dass Descendants() nie null zurückgibt - es wird eine leere Sequenz zurückgegeben, wenn keine übereinstimmenden Elemente vorhanden sind. So willst du:

%Vor%

Beachten Sie, dass ich die konventionellere Benennung Path.Combine verwendet und auch den Aufruf Save verschoben habe, sodass Sie nur dann speichern, wenn Sie tatsächlich eine Änderung am Dokument vorgenommen haben.

    
Jon Skeet 29.07.2013, 05:49
quelle
4
%Vor%

Hinweis: Ich habe den Namespace der Kürze halber nicht aufgenommen. Sie müssen diese hinzufügen.

    
Prash 29.07.2013 06:06
quelle

Tags und Links