SchemaImporterExtension Klasse

Definition

Ermöglicht die Anpassung des von einem WSDL (Web Services Description Language)-Dokument generierten Codes bei der Verwendung automatisierter Abfragetools.

public ref class SchemaImporterExtension abstract
public abstract class SchemaImporterExtension
type SchemaImporterExtension = class
Public MustInherit Class SchemaImporterExtension
Vererbung
SchemaImporterExtension
Abgeleitet

Beispiele

Weitere Informationen finden Sie im Beispiel "SchemaImporterExtension Technology". Beachten Sie, dass in diesem Beispiel keine signierte Assembly enthalten ist. Stattdessen wird veranschaulicht, wie das SchemaImporterExtension Mit einem Befehlsfenster verwendet wird.

Hinweise

Die Schemaimportierung tritt auf, wenn ein Webdienstproxy über ein Tool wie das Dialogfeld "Webreferenz hinzufügen" in Visual Studio oder mithilfe des Web Services Description Language Tool (Wsdl.exe) erstellt wird. Die Schemaimportierung tritt auch bei Verwendung des XML-Schemadefinitionstools (Xsd.exe) auf, um Code aus einem bestimmten XSD-Dokument zu generieren.

Mit der SchemaImporterExtension Klasse können Sie den code ändern, der bei Verwendung eines dieser Tools generiert wird. Beispielsweise verfügen Sie über eine vorhandene Klasse, die Buchbestellungen auf einem System verarbeitet, und Sie verfügen über ein vorhandenes XSD-Dokument, das Ihre Bestellungen bereitstellt. Mithilfe der SchemaImporterExtension Klasse können Sie eines der Tools aktivieren, um Code zu generieren, der Ihre Klasse verwendet.

Um die Generierung des Codes zu steuern, müssen Sie die Klassen im System.CodeDom Namespace verwenden. Weitere Informationen finden Sie unter Verwenden der CodeDOM - und CodeDOM-Kurzübersicht.

Die Schritte zum Aktivieren des WSDL.exe-Tools (die wiederum von anderen Tools wie dem Dialogfeld "Webreferenz hinzufügen") verwendet werden, sind:

  1. Erstellen Sie eine Implementierung der SchemaImporterExtension Klasse.

  2. Verwenden Sie die ImportSchemaType Methode, um Code für den Codegenerator zu schreiben. Die Methode enthält Parameter, mit denen Sie den abgefangenen XSD-Typ untersuchen und CodeDOM-Objekte erstellen können, die zum Generieren des neuen CLR-Codes verwendet werden.

  3. Verwenden Sie bei Bedarf die ImportAnyElement Methode, um Elemente im XSD-Dokument zu behandeln <xsd:any> .

  4. Verwenden Sie bei Bedarf die ImportDefaultValue Methode, um Standardwerte im XSD-Dokument zu untersuchen und einen anderen Standardwert zurückzugeben.

  5. Kompilieren Sie Ihre Erweiterung in eine Bibliothek.

  6. Signieren Sie die Assembly.

  7. Installieren Sie die Assembly im globalen Assemblycache (GAC).

  8. Ändern Sie die machine.config Datei, um die Erweiterung einzuschließen.

Konstruktoren

SchemaImporterExtension()

Initialisiert eine neue Instanz der SchemaImporterExtension-Klasse.

Methoden

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
ImportAnyElement(XmlSchemaAny, Boolean, XmlSchemas, XmlSchemaImporter, CodeCompileUnit, CodeNamespace, CodeGenerationOptions, CodeDomProvider)

Verarbeitet den Import der <xsd: any>-Elemente im Schema.

ImportDefaultValue(String, String)

Ermöglicht das Angeben des Standardwerts für den importierten XSD-Typ.

ImportSchemaType(String, String, XmlSchemaObject, XmlSchemas, XmlSchemaImporter, CodeCompileUnit, CodeNamespace, CodeGenerationOptions, CodeDomProvider)

Ermöglicht das Ändern des Codes, der durch Untersuchen des importierten Schemas und Angeben des diesem zuzuordnenden CLR-Typs generiert wurde.

ImportSchemaType(XmlSchemaType, XmlSchemaObject, XmlSchemas, XmlSchemaImporter, CodeCompileUnit, CodeNamespace, CodeGenerationOptions, CodeDomProvider)

Ermöglicht das Ändern des Codes, der durch Untersuchen des importierten Schemas und Angeben des diesem zuzuordnenden CLR-Typs generiert wurde.

MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für