Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Anmärkning
Den här artikeln innehåller ytterligare kommentarer till referensdokumentationen för det här API:et.
Klassen XmlConvert är funktionellt likvärdig med Convert klassen, men den stöder XML-standarder. Typsystemet baseras på schematypen XSD (XML Schema Definition Language) och de värden som returneras är alltid språkoberoende.
Kodning och avkodning
Element- och attributnamn eller ID-värden är begränsade till ett intervall med XML-tecken enligt W3C XML 1.0-rekommendationen. När namn innehåller ogiltiga tecken kan du använda EncodeName metoderna och DecodeName i den här klassen för att översätta dem till giltiga XML-namn.
Om du till exempel vill använda kolumnrubriken "Order Detail" i en databas tillåter databasen utrymmet mellan de två orden. I XML anses dock utrymmet mellan "Order" och "Detail" vara ett ogiltigt XML-tecken. Du måste konvertera den till en undantagen hexadecimal kodning och avkoda den senare.
Du kan använda EncodeName metoden med XmlWriter klassen för att se till att namnen som skrivs är giltiga XML-namn. Följande C#-kod konverterar namnet "Order Detail" till ett giltigt XML-namn och skriver elementet <Order_0x0020_Detail>My order</Order_0x0020_Detail>.
writer.WriteElementString(XmlConvert.EncodeName("Order Detail"),"My order");
XmlConvert Följande metoder utför kodning och avkodning.
| Metod | Beskrivning |
|---|---|
| EncodeName | Tar ett namn och returnerar det kodade namnet tillsammans med eventuella ogiltiga tecken som ersätts av en escape-sträng. Den här metoden tillåter kolon i valfri position, vilket innebär att namnet fortfarande kan vara ogiltigt enligt W3C-namnrymderna i XML 1.0-rekommendationen. |
| EncodeNmToken | Tar ett namn och returnerar det kodade namnet. |
| EncodeLocalName | Samma som EncodeName förutom att det också kodar kolontecknet, vilket garanterar att namnet kan användas som LocalName en del av ett namnområdeskvalificerat namn. |
| DecodeName | Återställer omvandlingen för alla kodningsmetoder. |
Namnverifiering
Klassen XmlConvert innehåller två metoder som kontrollerar tecknen i ett element eller attributnamn och kontrollerar att namnet överensstämmer med de regler som anges i W3C XML 1.0-rekommendationen:
- VerifyName kontrollerar tecknen och verifierar att namnet är giltigt. Metoden returnerar namnet om det är giltigt och utlöser ett undantag om det inte är det.
- VerifyNCName utför samma validering, men accepterar icke-kvalificerade namn.
XmlConvert Innehåller ytterligare metoder som validerar token, blankstegstecken, offentliga ID:er och andra strängar.
Konvertering av datatyp
XmlConvert innehåller också metoder som möjliggör att du kan konvertera data från en sträng till en starkt typad datatyp. Metoden konverterar till exempel ToDateTime en sträng till dess DateTime motsvarighet. Detta är användbart eftersom de flesta metoder i XmlReader klassen returnerar data som en sträng. När data har lästs kan de konverteras till rätt datatyp innan de används. De ToString överlagringarna ger den kompletterande operationen genom att konvertera strikt typade data till strängar. Detta är till exempel användbart när du vill lägga till data i textrutor på en webbsida. Nationella inställningar beaktas inte under datakonverteringen. Datatyperna baseras på datatyperna FÖR XML-schema (XSD).