System.Xml.XmlConvert – třída

Tento článek obsahuje doplňující poznámky k referenční dokumentaci pro toto rozhraní API.

Třída XmlConvert je funkčně ekvivalentní Convert třídě, ale podporuje standardy XML. Systém typů je založený na typu schématu XSD (XML Schema Definition Language) a vrácené hodnoty jsou vždy nezávislé na národním prostředí.

Kódování a dekódování

Názvy elementů a atributů nebo hodnoty ID jsou omezeny na rozsah znaků XML podle doporučení W3C XML 1.0. Pokud názvy obsahují neplatné znaky, můžete je použít EncodeName a DecodeName metody v této třídě k jejich překladu do platných názvů XML.

Pokud například chcete v databázi použít záhlaví sloupce Podrobnosti objednávky, databáze umožňuje mezeru mezi těmito dvěma slovy. V jazyce XML je však mezera mezi "Order" a "Detail" považována za neplatný znak XML. Musíte ho převést na šestnáctkové kódování s řídicím znakem a později ho dekódovat.

Metodu EncodeName s XmlWriter třídou můžete použít k zajištění, aby názvy, které se zapisují, byly platné názvy XML. Následující kód jazyka C# převede název Order Detail na platný název XML a zapíše element <Order_0x0020_Detail>My order</Order_0x0020_Detail>.

writer.WriteElementString(XmlConvert.EncodeName("Order Detail"),"My order");

Následující XmlConvert metody provádějí kódování a dekódování.

metoda Popis
EncodeName Vezme název a vrátí kódovaný název spolu s libovolným neplatným znakem, který je nahrazen řídicím řetězcem. Tato metoda umožňuje dvojtečky v libovolné pozici, což znamená, že název může být stále neplatný podle oborů názvů W3C v doporučení XML 1.0.
EncodeNmToken Vezme název a vrátí kódovaný název.
EncodeLocalName Stejně jako EncodeName s tím rozdílem, že kóduje také dvojtečku, zaručuje, že název lze použít jako LocalName součást názvu kvalifikovaného oboru názvů.
DecodeName Obrátí transformaci pro všechny metody kódování.

Ověření názvu

Třída XmlConvert obsahuje dvě metody, které kontrolují znaky v názvu elementu nebo atributu a ověřují, že název odpovídá pravidlům nastaveným doporučením W3C XML 1.0:

  • VerifyName zkontroluje znaky a ověří, zda je název platný. Metoda vrátí název, pokud je platný, a vyvolá výjimku, pokud není.
  • VerifyNCName provádí stejné ověření, ale přijímá nekvalifikované názvy.

Obsahuje XmlConvert další metody, které ověřují tokeny, prázdné znaky, veřejné ID a další řetězce.

Převod datového typu

XmlConvert poskytuje také metody, které umožňují převést data z řetězce na datový typ silného typu. Například ToDateTime metoda převede řetězec na jeho DateTime ekvivalent. To je užitečné, protože většina metod ve XmlReader třídě vrací data jako řetězec. Po přečtení dat je možné je před použití převést na správný datový typ. Přetížení ToString poskytují doplňkovou operaci převodem dat silného typu na řetězce. To je užitečné například v případě, že chcete data přidat do textových polí na webové stránce. Nastavení národního prostředí se při převodu dat nezapočítávají. Datové typy jsou založené na datových typech schématu XML (XSD).