Freigeben über


SchemaImporterExtension Klasse

Definition

Ermöglicht Ihnen das Anpassen des codes, der aus einem WSDL-Dokument (Web Services Description Language) generiert wird, wenn Sie automatisierte Abfragetools verwenden.

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 SchemaImporterExtension-Technologiebeispiel. Beachten Sie, dass in diesem Beispiel keine signierte Assembly enthalten ist. Stattdessen wird die Verwendung des SchemaImporterExtension Befehlsfensters mit einem Befehlsfenster veranschaulicht.

Hinweise

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

Mit SchemaImporterExtension der Klasse können Sie den code ändern, der bei Verwendung eines dieser Tools generiert wird. Beispielsweise verfügen Sie möglicherweise ü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 im System.CodeDom Namespace gefundenen Klassen verwenden. Weitere Informationen finden Sie unter Verwenden der CodeDOM - und CodeDOM-Kurzübersicht.aspx).

Die Schritte zum Aktivieren des tools WSDL.exe (die wiederum von anderen Tools wie dem Dialogfeld "Webverweis 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 xsd:any-Elemente> im XSD-Dokument zu behandeln<.
  4. Verwenden Sie bei Bedarf die ImportDefaultValue Methode, um Standardwerte im XSD-Dokument zu untersuchen und einen anderen Standardwert zurückzugeben.
  5. Kompilieren Sie Die 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 so, dass sie die Erweiterung enthält.

Konstruktoren

Name Beschreibung
SchemaImporterExtension()

Initialisiert eine neue Instanz der SchemaImporterExtension-Klasse.

Methoden

Name Beschreibung
Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft die Type der aktuellen Instanz ab.

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

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

ImportDefaultValue(String, String)

Ermöglicht ihnen, den Standardwert für den zu importierenden XSD-Typ anzugeben.

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

Ermöglicht es Ihnen, den generierten Code zu bearbeiten, indem Sie das importierte Schema untersuchen und den CLR-Typ angeben, dem er zugeordnet ist.

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

Ermöglicht es Ihnen, den generierten Code zu bearbeiten, indem Sie das importierte Schema untersuchen und den CLR-Typ angeben, dem er zugeordnet ist.

MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()

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

(Geerbt von Object)

Gilt für: