Sınıflardan Şemaları Dışa 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 kullanarak her XmlSchema nesneyi seri hale getirin XmlSerializer.

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

  1. XsdDataContractExporter nesnesinin bir örneğini oluşturun.

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

  3. isteğe bağlı. Yöntemlerden birini çağırın CanExport . yöntemi, belirtilen türün dışarı aktarılıp aktarılamayacağını belirler. yöntemi, sonraki adımda yöntemiyle Export aynı aşırı yüklemelere sahiptir.

  4. Yöntemlerden birini çağırın Export . Bir , bir Typenesne veya nesneden Type oluşan Assembly üç List<T> aşırı yükleme List<T> vardır. 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 varsa içinde bir tür oluşturulmaz XmlSchemaSet . Bu nedenle, aynı XsdDataContractExporter üzerinde birden çok kez çağrılmasıExport, sınıfın birden çok örneğini XsdDataContractExporter oluşturmak için tercih edilir. Bu, yinelenen şema türlerinin oluşturulmasını önler.

    Not

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

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

Dışarı Aktarma Seçenekleri

dışarı aktarma işleminin OptionsXsdDataContractExporter çeşitli yönlerini denetlemek için öğesinin ExportOptions özelliğini sınıfının bir örneğine ayarlayabilirsiniz. Ö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. Bu modüller şunlardır:

  • 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 Typebir XmlSchemaType öğesini temsil eden bir döndürür.

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

Ayrıca bkz.