Freigeben über


XmlSchemaCollection Klasse

Definition

Achtung

Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation. https://go.microsoft.com/fwlink/?linkid=14202

Achtung

XmlSchemaCollection has been deprecated. Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation.

Achtung

XmlSchemaCollection has been deprecated. Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation instead.

Achtung

Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation. http://go.microsoft.com/fwlink/?linkid=14202

Enthält einen Cache mit XSD-Schemas (XML Schema Definition) und XDR-Schemas (XML-Data Reduced). Die Klasse XmlSchemaCollection ist veraltet. Verwenden Sie stattdessen XmlSchemaSet.

public ref class XmlSchemaCollection sealed : System::Collections::ICollection
[System.Obsolete("Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation. https://go.microsoft.com/fwlink/?linkid=14202")]
public sealed class XmlSchemaCollection : System.Collections.ICollection
[System.Obsolete("XmlSchemaCollection has been deprecated. Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation.")]
public sealed class XmlSchemaCollection : System.Collections.ICollection
[System.Obsolete("XmlSchemaCollection has been deprecated. Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation instead.")]
public sealed class XmlSchemaCollection : System.Collections.ICollection
[System.Obsolete("Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation. http://go.microsoft.com/fwlink/?linkid=14202")]
public sealed class XmlSchemaCollection : System.Collections.ICollection
public sealed class XmlSchemaCollection : System.Collections.ICollection
[<System.Obsolete("Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation. https://go.microsoft.com/fwlink/?linkid=14202")>]
type XmlSchemaCollection = class
    interface ICollection
    interface IEnumerable
[<System.Obsolete("XmlSchemaCollection has been deprecated. Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation.")>]
type XmlSchemaCollection = class
    interface ICollection
    interface IEnumerable
[<System.Obsolete("XmlSchemaCollection has been deprecated. Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation instead.")>]
type XmlSchemaCollection = class
    interface ICollection
    interface IEnumerable
[<System.Obsolete("Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation. http://go.microsoft.com/fwlink/?linkid=14202")>]
type XmlSchemaCollection = class
    interface ICollection
    interface IEnumerable
type XmlSchemaCollection = class
    interface ICollection
    interface IEnumerable
Public NotInheritable Class XmlSchemaCollection
Implements ICollection
Vererbung
XmlSchemaCollection
Attribute
Implementiert

Beispiele

Im folgenden Beispiel wird ein XML-Dokument mithilfe des XmlSchemaCollection.

#using <System.Xml.dll>
#using <System.dll>

using namespace System;
using namespace System::Xml;
using namespace System::Xml::Schema;
using namespace System::IO;
public ref class ValidXSD
{
public:
   static void main()
   {
      XmlSchemaCollection^ sc = gcnew XmlSchemaCollection;
      sc->ValidationEventHandler += gcnew ValidationEventHandler( ValidationCallBack );
      sc->Add( nullptr, "books.xsd" );
      if ( sc->Count > 0 )
      {
         XmlTextReader^ tr = gcnew XmlTextReader( "notValidXSD.xml" );
         XmlValidatingReader^ rdr = gcnew XmlValidatingReader( tr );
         rdr->ValidationType = ValidationType::Schema;
         rdr->Schemas->Add( sc );
         rdr->ValidationEventHandler += gcnew ValidationEventHandler( ValidationCallBack );
         while ( rdr->Read() )
                  ;
      }
   }


private:
   static void ValidationCallBack( Object^ /*sender*/, ValidationEventArgs^ e )
   {
      Console::WriteLine( "Validation Error: {0}", e->Message );
   }

};

int main()
{
   ValidXSD::main();
}
using System;
using System.Xml;
using System.Xml.Schema;
using System.IO;

public class ValidXSD {

  public static void Main() {
    XmlSchemaCollection sc = new XmlSchemaCollection();
    sc.ValidationEventHandler += new ValidationEventHandler(ValidationCallBack);
    sc.Add(null, "books.xsd");

    if(sc.Count > 0)
    {
      XmlTextReader tr = new XmlTextReader("notValidXSD.xml");
      XmlValidatingReader rdr = new XmlValidatingReader(tr);

      rdr.ValidationType = ValidationType.Schema;
      rdr.Schemas.Add(sc);
      rdr.ValidationEventHandler += new ValidationEventHandler(ValidationCallBack);
      while (rdr.Read());
    }
  }

  private static void ValidationCallBack(object sender, ValidationEventArgs e) {
    Console.WriteLine("Validation Error: {0}", e.Message);
  }
}
Imports System.Xml
Imports System.Xml.Schema
Imports System.IO

public class ValidXSD 

  public shared sub Main() 
    Dim sc as XmlSchemaCollection = new XmlSchemaCollection()
    AddHandler sc.ValidationEventHandler, AddressOf ValidationCallBack
    sc.Add(nothing, "books.xsd")

    if(sc.Count > 0)
      Dim tr as XmlTextReader = new XmlTextReader("notValidXSD.xml")
      Dim rdr as XmlValidatingReader = new XmlValidatingReader(tr)

      rdr.ValidationType = ValidationType.Schema
      rdr.Schemas.Add(sc)
      AddHandler rdr.ValidationEventHandler, AddressOf ValidationCallBack
      while (rdr.Read())
      end while
    end if

  end sub

  private shared sub ValidationCallBack(sender as object, e as ValidationEventArgs) 
    Console.WriteLine("XSD Error: {0}", e.Message)
  end sub

end class

Hinweise

Schemas werden mithilfe der Add Methode geladen, zu der das Schema einem Namespace uniform Resource Identifier (URI) zugeordnet ist. Bei XML-Schemas ist dies in der Regel die targetNamespace Eigenschaft des Schemas.

Obwohl diese Klasse sowohl XML-Schemas als auch XDR-Schemas speichert, werden alle Methoden und Eigenschaften, die nur XmlSchema für XML-Schemas gelten, verwendet oder zurückgegeben.

Diese Version des Produkts unterstützt die XML-Schemaempfehlung des World Wide Web Consortium (W3C) im XML-Schemateil 1: Strukturen und XML-Schemateil 2: Datentypen. Ein XML-Schema muss im Schemaelement auf den W3C-Schemanamespace http://www.w3.org/2001/XMLSchema verweisen. Ein Beispiel finden Sie in der Add Methode.

XmlSchemaCollection kann für XmlValidatingReader eine effiziente Datenüberprüfung verwendet werden.

Wichtig

Die XmlSchemaCollection Klasse ist in der Microsoft .NET Framework Version 2.0 veraltet und wurde durch die XmlSchemaSet Klasse ersetzt.

Konstruktoren

XmlSchemaCollection()

Initialisiert eine neue Instanz der XmlSchemaCollection-Klasse.

XmlSchemaCollection(XmlNameTable)

Initialisiert eine neue Instanz der XmlSchemaCollection-Klasse mit der angegebenen XmlNameTable. Die XmlNameTable wird beim Laden von Schemas verwendet.

Eigenschaften

Count

Ruft die Anzahl der in dieser Auflistung definierten Namespaces ab.

Item[String]

Ruft das dem angegebenen Namespace-URI zugeordnete XmlSchema ab.

NameTable

Ruft die von der XmlNameTable beim Laden neuer Schemas verwendete Standard-XmlSchemaCollection ab.

Methoden

Add(String, String)

Fügt das durch die angegebene URL angegebene Schema der Schemaauflistung hinzu.

Add(String, XmlReader)

Fügt der Schemaauflistung das im XmlReader enthaltene Schema hinzu.

Add(String, XmlReader, XmlResolver)

Fügt der Schemaauflistung das im XmlReader enthaltene Schema hinzu. Der angegebene XmlResolver wird zum Auflösen externer Ressourcen verwendet.

Add(XmlSchema)

Fügt der Auflistung das XmlSchema hinzu.

Add(XmlSchema, XmlResolver)

Fügt der Auflistung das XmlSchema hinzu. Der angegebene XmlResolver wird zum Auflösen externer Verweise verwendet.

Add(XmlSchemaCollection)

Fügt dieser Auflistung alle in der angegebenen Auflistung definierten Namespaces (einschließlich der zugeordneten Schemas) hinzu.

Contains(String)

Ruft einen Wert ab, der angibt, ob in der Auflistung ein Schema mit dem angegebenen Namespace vorhanden ist.

Contains(XmlSchema)

Ruft einen Wert ab, der angibt, ob der targetNamespace des angegebenen XmlSchema in der Auflistung vorhanden ist.

CopyTo(XmlSchema[], Int32)

Kopiert alle XmlSchema-Objekte ab dem angegebenen Index aus der Auflistung in das angegebene Array.

Equals(Object)

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

(Geerbt von Object)
GetEnumerator()

Stellt Unterstützung für "for each"-Iterationen in der Auflistung von Schemas bereit.

GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
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)

Ereignisse

ValidationEventHandler

Legt einen Ereignishandler zum Empfangen von Informationen über die XDR- und XML-Schema-Validierungsfehler.

Explizite Schnittstellenimplementierungen

ICollection.CopyTo(Array, Int32)

Eine Beschreibung dieses Elements finden Sie unter CopyTo(XmlSchema[], Int32).

ICollection.Count

Eine Beschreibung dieses Elements finden Sie unter Count.

ICollection.IsSynchronized

Eine Beschreibung dieses Elements finden Sie unter ICollection.IsSynchronized.

ICollection.SyncRoot

Eine Beschreibung dieses Elements finden Sie unter ICollection.SyncRoot.

IEnumerable.GetEnumerator()

Eine Beschreibung dieses Elements finden Sie unter GetEnumerator().

Erweiterungsmethoden

Cast<TResult>(IEnumerable)

Wandelt die Elemente eines IEnumerable in den angegebenen Typ um

OfType<TResult>(IEnumerable)

Filtert die Elemente eines IEnumerable anhand eines angegebenen Typs

AsParallel(IEnumerable)

Ermöglicht die Parallelisierung einer Abfrage.

AsQueryable(IEnumerable)

Konvertiert einen IEnumerable in einen IQueryable.

Gilt für