Freigeben über


XmlSchemaSet.Reprocess(XmlSchema) Methode

Definition

Verarbeitet erneut ein XSD-Schema (XML Schema Definition Language), das bereits im XmlSchemaSet vorhanden ist.

public:
 System::Xml::Schema::XmlSchema ^ Reprocess(System::Xml::Schema::XmlSchema ^ schema);
public System.Xml.Schema.XmlSchema Reprocess (System.Xml.Schema.XmlSchema schema);
member this.Reprocess : System.Xml.Schema.XmlSchema -> System.Xml.Schema.XmlSchema
Public Function Reprocess (schema As XmlSchema) As XmlSchema

Parameter

schema
XmlSchema

Das erneut zu verarbeitende Schema.

Gibt zurück

Ein XmlSchema-Objekt, wenn das Schema ein gültiges Schema ist. Wenn das Schema nicht gültig ist und ein ValidationEventHandler angegeben ist, wird null zurückgegeben und das entsprechende Validierungsereignis ausgelöst. Andernfalls wird eine XmlSchemaException ausgelöst.

Ausnahmen

Das Schema ist ungültig.

Das als Parameter übergebene XmlSchema-Objekt ist null.

Das XmlSchema-Objekt, das als Parameter übergeben wurde, ist im XmlSchemaSet noch nicht vorhanden.

Beispiele

Das folgende Beispiel veranschaulicht die erneute Verarbeitung eines Schemas, das dem XmlSchemaSethinzugefügt wurde. Nachdem das XmlSchemaSet mit der Compile -Methode kompiliert wurde und das dem XmlSchemaSet hinzugefügte Schema geändert wurde, wird die IsCompiled -Eigenschaft auf truefestgelegt, obwohl ein Schema in geändert XmlSchemaSet wurde. Das Aufrufen der Reprocess -Methode führt die gesamte Vorverarbeitung durch, die von der Add -Methode ausgeführt wird, und legt die IsCompiled -Eigenschaft auf fest false.

Dim schemaSet As XmlSchemaSet = New XmlSchemaSet()
Dim schema As XmlSchema = schemaSet.Add("http://www.contoso.com/books", "http://www.contoso.com/books.xsd")
schemaSet.Compile()

Dim element As XmlSchemaElement = New XmlSchemaElement()
schema.Items.Add(element)
element.Name = "book"
element.SchemaTypeName = New XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema")

schemaSet.Reprocess(schema)
XmlSchemaSet schemaSet = new XmlSchemaSet();
XmlSchema schema = schemaSet.Add("http://www.contoso.com/books", "http://www.contoso.com/books.xsd");
schemaSet.Compile();

XmlSchemaElement element = new XmlSchemaElement();
schema.Items.Add(element);
element.Name = "book";
element.SchemaTypeName = new XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");

schemaSet.Reprocess(schema);

Hinweise

Durch die erneute Verarbeitung eines Schemas werden alle Vorverarbeitungsschritte ausgeführt, die für ein Schema ausgeführt werden, wenn die Add Methode aufgerufen wird. Wenn der Aufruf von Reprocess erfolgreich ist, wird die IsCompiled -Eigenschaft auf falsefestgelegt.

Die Reprocess-Methode sollte verwendet werden, nachdem ein Schema in geändert XmlSchemaSet wurde, nachdem die XmlSchemaSet Kompilierung durchgeführt wurde.

Hinweis

Sie müssen die Reprocess -Methode aufrufen, wenn Sie ein Schema (oder eines seiner Includes/Importe) geändert haben, nachdem Sie es hinzugefügt XmlSchemaSethaben. Die Reprocess -Methode überprüft das Schema auf strukturelle Gültigkeit gemäß den Regeln des W3C XML-Schemas. Es wird jedoch keine vollständige Überprüfung durchgeführt. Außerdem werden Verweise auf interne und externe Schemakomponenten aufgelöst. Alle importierten oder eingeschlossenen Schemas, die erfolgreich abgerufen werden, werden ebenfalls hinzugefügt XmlSchemaSet. Importierte Schemas werden als separate XmlSchema Objekte hinzugefügt, während eingeschlossene Schemas teil des eingeschlossen XmlSchemawerden. Wenn der Aufruf der Erneutverarbeitung erfolgreich ist, wird die IsCompiled Eigenschaft auf false festgelegt.

Gilt für: