XML-Unterknoten hinzufügen.



  • Wieso kann ich meinem XmlDocument keine weiteren Unterknoten hinzufügen? 🙄

    Folgender Code wirft eine InvalidOperationException:

    this.xmlDoc.DocumentElement.AppendChild(newNode);
    // this.xmlDoc ist ein XmlDocument-Objekt, welches die XML-Deklarartion und einen leeren Knoten enthält.
    

    Ich habe vor, newNode dem leeren Knoten in this.xmlDoc als Unterknoten hinzuzufügen.



  • Sorry, aber keine Ahnung, an was das liegen könnte. Vielleicht hilft ein Stacktrace weiter. Kannst du den mal posten?



  • Die Exception lässt sich nicht abfangen 😮

    try
    {
    	this.xmlDoc.DocumentElement.AppendChild(newNode);
    }
    catch (Exception ex)
    {
    	MessageBox.Show(ex.StackTrace);
    	// Dieser Code wird nie erreicht.
    }
    

    Also ich hab in den msdn gelesen, dass die AppendChild-Methode eine InvalidOperationException wirft, wenn dem aktuellen Knoten kein Unterknoten hinzugefügt werden kann. Aber das kann ich hier irgendwie garnicht nachvollziehen.



  • Hey Kumpels, hat denn niemand ne Idee warum ich keinen Unterknoten hinzufügen kann? Oder weiß vielleicht wenigstens jemand warum sich die Exception noch nicht mal mit try-catch abfangen lässt?



  • Eine Exception die sich nicht abfangen lässt deutet glaub ich auf fehlerhaften IL-Code hin. Es _könnte_ sein, dass der C#-Compiler in deinem Fall fehlerhaften IL generiert. Wenn du IL verstehst, kannst du mal DisASM machen und schauen, aber weiter bringen tuts dich nicht 🙄 .



  • Ich hab den Fehler 🙂

    Die Exception bezog sich auf eine Zeile drüber, nur Visual Studio, dumm wie es ist, hat die Zeile unter dem Fehler hervorgehoben.

    In der Zeile drüber stand:

    newNode.Value = val;
    
    newNode.InnerText = val;
    

    ...hätte da, aber stehen müssen.


Anmelden zum Antworten