Freigeben über


Codieren und Decodieren von XML-Element- und -Attributnamen und ID-Werten

Element- und Attributnamen oder ID-Werte sind auf einen Bereich von XML-Zeichen beschränkt, der der W3C-Empfehlung Extensible Markup Language (XML) 1.0 (Fourth Edition) entspricht.Wenn Namen ungültige Zeichen enthalten, werden sie mithilfe von Codier- und Decodiermethoden in gültige XML-Namen umgewandelt.

Bei vielen Sprachen und Anwendungen wie Microsoft SQL Server und Microsoft Office Word sind Unicode-Zeichen in Namen zulässig, die in XML-Namen ungültig sind.Beispielsweise wäre bei einer Spaltenüberschrift "Order Detail" in einer Datenbank das Leerzeichen zwischen den Wörtern "Order" und "Detail" zulässig, während es in XML ein ungültiges XML-Zeichen darstellt.Daher muss das Leerzeichen (das ungültige Zeichen) in geschützte Hexadezimalcodierung konvertiert werden, die später decodiert werden kann.

Die XmlTextWriter-Klasse führt standardmäßig keine Zeichenüberprüfung durch.Der Code WriteElementString("Order Detail", "My order"), erstellt beispielsweise ein ungültiges Element von <Order Detail>My order</Order Detail>.

Die korrekte Codierung zum Codieren des Elementwerts lautet writer.WriteElementString(XmlConvert.EncodeName("Order Detail"), "My order"), womit das gültige Element <Order_0x0020_Detail>My order</Order_0x0020_Detail> erstellt.

Siehe auch

Konzepte

Konvertierung von XML-Datentypen