Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel wird beschrieben, wie Sie steuern, ob beim Serialisieren von XML in C# oder Visual Basic eine XML-Deklaration generiert wird.
Beim Serialisieren in ein File- oder TextWriter-Objekt führt die Verwendung der XElement.Save- oder XDocument.Save-Methode zur Generierung einer XML-Deklaration. Beim Serialisieren in einen XmlWriter bestimmen die (in einem XmlWriterSettings-Objekt angegebenen) Writer-Einstellungen, ob eine XML-Deklaration generiert wird.
Bei der Serialisierung in eine Zeichenfolge mithilfe der ToString
-Methode enthält der resultierende XML-Code keine XML-Deklaration.
Beispiel: Serialisieren mit einer XML-Deklaration
Das folgende Beispiel erstellt ein XElement, speichert das Dokument in einer Datei und gibt die Datei dann auf der Konsole aus:
XElement root = new XElement("Root",
new XElement("Child", "child content")
);
root.Save("Root.xml");
string str = File.ReadAllText("Root.xml");
Console.WriteLine(str);
Dim root As XElement = <Root>
<Child>child content</Child>
</Root>
root.Save("Root.xml")
Dim str As String = File.ReadAllText("Root.xml")
Console.WriteLine(str)
Dieses Beispiel erzeugt die folgende Ausgabe:
<?xml version="1.0" encoding="utf-8"?>
<Root>
<Child>child content</Child>
</Root>
Beispiel: Serialisieren ohne eine XML-Deklaration
Das folgende Beispiel zeigt die Vorgehensweise beim Speichern eines XElement in einem XmlWriter.
StringBuilder sb = new StringBuilder();
XmlWriterSettings xws = new XmlWriterSettings();
xws.OmitXmlDeclaration = true;
using (XmlWriter xw = XmlWriter.Create(sb, xws)) {
XElement root = new XElement("Root",
new XElement("Child", "child content")
);
root.Save(xw);
}
Console.WriteLine(sb.ToString());
Dim sb As StringBuilder = New StringBuilder()
Dim xws As XmlWriterSettings = New XmlWriterSettings()
xws.OmitXmlDeclaration = True
Using xw As XmlWriter = XmlWriter.Create(sb, xws)
Dim root = <Root>
<Child>child content</Child>
</Root>
root.Save(xw)
End Using
Console.WriteLine(sb.ToString())
Dieses Beispiel erzeugt die folgende Ausgabe:
<Root><Child>child content</Child></Root>