Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
Det här avsnittet beskriver några implementeringsinformation som du vill vara medveten om.
Listmappningar
Typerna IList, ICollection, IEnumerable, Type[], och String används för att representera XSD-listtyper (XML Schema Definition Language).
Unionsmappningar
Union-typer representeras med hjälp av XmlAtomicValue-typen eller String-typen. Källtypen eller måltypen måste därför alltid vara antingen String eller XmlAtomicValue.
Om objektet XmlSchemaDatatype representerar en listtyp konverterar objektet indatasträngvärdet till en lista över ett eller flera objekt. Om XmlSchemaDatatype representerar en unionstyp görs ett försök att tolka indatavärdet som en deltyp av unionen. Om parsningsförsöket misslyckas görs konverteringen med nästa medlem i unionen och så vidare tills konverteringen lyckas, eller så finns det inga andra medlemstyper att prova, i vilket fall ett undantag utlöses.
Skillnader mellan CLR- och XML-datatyper
Följande beskriver vissa matchningar som kan uppstå mellan CLR-typer och XML-datatyper och hur de hanteras.
Anmärkning
Prefixet xs mappas till namnområdes-URI:n https://www.w3.org/2001/XMLSchema.
System.TimeSpan och xs:duration
Typen xs:duration sorteras delvis eftersom det finns vissa varaktighetsvärden som är olika men likvärdiga. Det innebär att för xs:duration typvärdet, till exempel 1 månad (P1M) är mindre än 32 dagar (P32D), större än 27 dagar (P27D) och motsvarande 28, 29 eller 30 dagar.
Klassen TimeSpan stöder inte den här partiella ordningen. I stället väljer den ett visst antal dagar för 1 år och 1 månad. 365 dagar respektive 30 dagar.
Mer information om typen finns i xs:duration W3C XML-schema del 2: Rekommendation för datatyper.
xs:time, gregorianska datumtyper och System.DateTime
När ett xs:time värde mappas till ett DateTime objekt MinValue används fältet för att initiera datumegenskaperna DateTime för objektet (till exempel Year, Monthoch Day) till det minsta möjliga DateTime värdet.
På samma sätt mappas även instanser av xs:gMonth, xs:gDay, xs:gYearxs:gYearMonth och xs:gMonthDay till ett DateTime objekt. Oanvända egenskaper för DateTime objektet initieras till dem från MinValue.
Anmärkning
Du kan inte lita på värdet DateTime.Year när innehållet skrivs som xs:gMonthDay. Värdet DateTime.Year är alltid inställt på 1904 i det här fallet.
xs:anyURI och System.Uri
När en instans av xs:anyURI den representerar en relativ URI mappas till en Urihar Uri objektet ingen bas-URI.