Aracılığıyla paylaş


XML Tür Desteği Uygulama Notları

Bu konu başlığında, farkında olmak istediğiniz bazı uygulama ayrıntıları açıklanmaktadır.

Liste Eşlemeleri

IList, ICollection, , IEnumerableType[] ve String türleri XML Şema tanım dili (XSD) liste türlerini temsil etmek için kullanılır.

Birleşim Eşlemeleri

Birleşim türleri, XmlAtomicValue veya String türü kullanılarak temsil edilir. Bu nedenle, kaynak türü veya hedef türü her zaman String veya XmlAtomicValue olmalıdır.

XmlSchemaDatatype Nesne bir liste türünü temsil ederse, nesne giriş dizesi değerini bir veya daha fazla nesnenin listesine dönüştürür. XmlSchemaDatatype birleşim türünü temsil ederse, giriş değerini birleşimin üye türü olarak ayrıştırmaya çalışılır. Eğer ayrıştırma girişimi başarısız olursa, dönüştürme işlemi bir sonraki birleşim üyesiyle denenir ve dönüştürme başarılı olana kadar bu işlem sürdürülür veya denenebilecek başka üye türü yoksa bir istisna oluşturulur.

CLR ve XML Veri Türleri Arasındaki Farklar

Aşağıda, CLR türleri ile XML veri türleri arasında oluşabilecek bazı uyuşmazlıklar ve bunların nasıl işlenmeleri açıklanmaktadır.

Uyarı

xs öneki https://www.w3.org/2001/XMLSchema ve ad alanı URI'sine eşlenir.

System.TimeSpan ve xs:duration

Türü xs:duration , farklı ama eşdeğer olan belirli süre değerlerinin olması için kısmen sıralanır. Bu, xs:duration değer türü 1 ay (P1M) gibi 32 günden (P32D) daha az, 27 günden (P27D) daha fazla ve 28, 29 veya 30 güne eşdeğer sayıldığı anlamına gelir.

TimeSpan sınıfı bu kısmi sıralamayı desteklemiyor. Bunun yerine, 1 yıl ve 1 ay için belirli bir gün sayısını seçer; Sırasıyla 365 gün ve 30 gün.

Türü hakkında xs:duration daha fazla bilgi için bkz. W3C XML Şema Bölüm 2: Veri Türleri Önerisi.

xs:time, Gregoryen Tarih Türleri ve System.DateTime

Bir xs:time değeri bir DateTime nesneye eşlendiğinde, MinValue alanı, DateTime nesnesinin (Year, Month ve Day gibi) tarih özelliklerini mümkün olan en küçük DateTime değerine başlatılmak için kullanılır.

Benzer şekilde, xs:gMonth, xs:gDay, xs:gYear, xs:gYearMonth ve xs:gMonthDay örnekleri de bir DateTime nesneyle eşlenir. DateTime nesnesinde kullanılmayan özellikler, MinValue'den alınanlarla başlatılır.

Uyarı

DateTime.Year değeri, içerik olarak xs:gMonthDay yazıldığında güvenilir değildir. Bu DateTime.Year durumda değer her zaman 1904 olarak ayarlanır.

xs:anyURI ve System.Uri

Göreli bir URI'yi temsil eden bir örneği xs:anyURI ile Urieşlendiğinde nesnenin Uri temel URI'si yoktur.

Ayrıca bakınız