Aracılığıyla paylaş


Sınıflardan Şemaları Dışarı Aktarma

Veri sözleşmesi modelinde kullanılan sınıflardan XML Şema tanım dili (XSD) şemaları oluşturmak için sınıfını XsdDataContractExporter kullanın. Bu konuda şema oluşturma işlemi açıklanmaktadır.

Dışarı Aktarma İşlemi

Şema dışarı aktarma işlemi bir veya daha fazla türle başlar ve bu türlerin XML projeksiyonunu açıklayan bir XmlSchemaSet oluşturur.

, XmlSchemaSet bir XSD Şema belgeleri kümesini temsil eden .NET Framework'ün Şema Nesne Modeli'nin (SOM) bir parçasıdır. bir XmlSchemaSetöğesinden XSD belgeleri oluşturmak için sınıfının özelliğinden SchemasXmlSchemaSet şema koleksiyonunu kullanın. Ardından her XmlSchema nesneyi XmlSerializer kullanarak seri hale getirin.

Şemaları dışarı aktarmak için

  1. öğesinin bir örneğini XsdDataContractExporteroluşturun.

  2. Opsiyonel. Oluşturucuya bir XmlSchemaSet geçirin. Bu durumda, şema dışa aktarma sırasında oluşturulan şema, boş bir XmlSchemaSet ile başlamak yerine bu XmlSchemaSet örneğe eklenir.

  3. Opsiyonel. Yöntemlerden birini çağırın: CanExport. yöntemi, belirtilen türün dışarı aktarılıp aktarılamayacağını belirler. Sonraki adımda Export yöntemi ile aynı aşırı yüklemelere sahip olan yöntem.

  4. Yöntemlerden birini çağırın: Export. Üç aşırı yükleme vardır: bir Type, List<T> nesnelerinden oluşan bir Type, veya List<T> nesnelerinden oluşan bir Assembly. Son durumda, verilen tüm derlemelerdeki tüm türler dışarı aktarılır.

    Yöntemine yapılan birden çok çağrı, Export aynı XmlSchemaSetöğesine birden çok öğe eklenmesine neden olur. Zaten XmlSchemaSet içinde varsa, bir tür üretilmez. Bu nedenle, Export'ı aynı XsdDataContractExporter üzerinde birden çok kez çağırmak, XsdDataContractExporter sınıfının birden çok örneğini oluşturmanın tercih edilir. Bu, yinelenen şema türlerinin oluşturulmasını önler.

    Uyarı

    Dışarı aktarma sırasında bir hata olursa, XmlSchemaSet tahmin edilemeyen bir durumda olur.

  5. XmlSchemaSet özelliği aracılığıyla Schemas öğesine erişin.

Dışarı Aktarma Seçenekleri

Options özelliklerini XsdDataContractExporter öğesine ayarlayarak dışarı aktarma sürecinin çeşitli yönlerini kontrol edebilirsiniz. Bunları ExportOptions sınıfının bir örneği olarak belirleyebilirsiniz. Özellikle aşağıdaki seçenekleri ayarlayabilirsiniz:

Yardımcı Yöntemler

şemayı dışarı aktarmanın birincil rolüne ek olarak, XsdDataContractExporter türleri hakkında bilgi sağlayan birkaç yararlı yardımcı yöntem sağlar. Bunlar şunları içerir:

  • GetRootElementName yöntem. Bu yöntem bir Type alır ve bu tür kök nesne olarak serileştirilmişse kullanılacak kök öğe adını ve ad alanını temsil eden bir XmlQualifiedName döndürür.

  • GetSchemaTypeName yöntem. Bu yöntem bir Type alır ve bu tür şemaya dışarı aktarıldığında kullanılacak XSD şema türünün adını temsil eden bir XmlQualifiedName döndürür. Şemada anonim türler olarak temsil edilen türler için IXmlSerializable bu yöntem döndürür null.

  • GetSchemaType yöntem. Bu yöntem yalnızca şemada anonim türler olarak temsil edilen türlerle IXmlSerializable çalışır ve diğer tüm türler için döndürür null . Anonim türler için bu yöntem, belirli bir XmlSchemaType'i temsil eden bir Type döndürür.

Dışarı aktarma seçenekleri bu yöntemlerin tümünü etkiler.

Ayrıca bakınız