Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a cikk azt ismerteti, hogyan szabályozható, hogy létrejön-e XML-deklaráció a C# vagy a Visual Basic xml-szerializálása során.
A metódus XDocument.Save vagy metódus XElement.Save használatával történő TextWriter szerializálás File XML-deklarációt hoz létre. Amikor szerializál egy XmlWriterobjektumot, az író beállításai (egy XmlWriterSettings objektumban megadva) határozzák meg, hogy létrejön-e XML-deklaráció.
Ha sztringre szerializálja a ToString metódust, az eredményül kapott XML nem tartalmaz XML-deklarációt.
Példa: Szerializálás XML-deklarációval
Az alábbi példa létrehoz egy XElementfájlt, menti a dokumentumot egy fájlba, majd kinyomtatja a fájlt a konzolon:
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)
Ez a példa a következő kimenetet hozza létre:
<?xml version="1.0" encoding="utf-8"?>
<Root>
<Child>child content</Child>
</Root>
Példa: Szerializálás XML-deklaráció nélkül
Az alábbi példa bemutatja, hogyan menthet egy fájlt XElement egy XmlWriterfájlba.
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())
Ez a példa a következő kimenetet hozza létre:
<Root><Child>child content</Child></Root>