XmlSchemaCollection Klasa

Definicja

Ostrzeżenie

Ten interfejs API jest teraz przestarzały.

Zawiera pamięć podręczną schematów języka definicji schematu XML (XSD) i danych XML (XDR).Contains a cache of XML Schema definition language (XSD) and XML-Data Reduced (XDR) schemas. Klasa XmlSchemaCollection jest przestarzała.The XmlSchemaCollection class is obsolete. Zamiast nich należy używać słów kluczowych XmlSchemaSet.Use XmlSchemaSet instead.

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")]
[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
type XmlSchemaCollection = class
    interface ICollection
    interface IEnumerable
Public NotInheritable Class XmlSchemaCollection
Implements ICollection
Dziedziczenie
XmlSchemaCollection
Atrybuty
Implementuje

Przykłady

Poniższy przykład sprawdza poprawność dokumentu XML przy użyciu XmlSchemaCollection.The following example validates an XML document using the 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

Uwagi

Schematy są ładowane przy użyciu metody Add, w którym schemat jest skojarzony z przestrzenią nazw Uniform Resource Identifier (URI).Schemas are loaded using the Add method, at which time the schema is associated with a namespace Uniform Resource Identifier (URI). W przypadku schematów XML jest to zwykle Właściwość targetNamespace schematu.For XML Schemas, this will typically be the targetNamespace property of the schema.

Chociaż ta klasa przechowuje zarówno schematy XML, jak i schematy XDR, każda metoda i właściwość, która pobiera lub zwraca XmlSchema ma zastosowanie tylko do schematów XML.Although this class stores both XML Schemas and XDR schemas, any method and property that takes or returns an XmlSchema applies to XML Schemas only.

Ta wersja produktu obsługuje zalecenia dotyczące schematu XML organizacja World Wide Web Consortium (W3C) znajdujące się w schemacie XML schematu część 1: struktury i schemat XML schematu część 2: typydanych.This version of the product supports the World Wide Web Consortium (W3C) XML Schema recommendation located at XML Schema Part 1: Structures and XML Schema Part 2: Datatypes. Schemat XML musi odwoływać się do przestrzeni nazw schematu W3C http://www.w3.org/2001/XMLSchema w jej elemencie Schema.An XML Schema must reference the W3C Schema namespace http://www.w3.org/2001/XMLSchema in its schema element. Zapoznaj się z przykładową metodą Add.See the Add method for an example.

XmlSchemaCollection może służyć XmlValidatingReader do wydajnej walidacji danych.XmlSchemaCollection can be used by XmlValidatingReader for efficient data validation.

Ważne

Klasa XmlSchemaCollection jest przestarzała w Microsoft .NET Framework w wersji 2,0 i została zastąpiona przez klasę XmlSchemaSet.The XmlSchemaCollection class is obsolete in the Microsoft .NET Framework version 2.0 and has been replaced by the XmlSchemaSet class.

Konstruktory

XmlSchemaCollection()

Inicjuje nowe wystąpienie klasy XmlSchemaCollection.Initializes a new instance of the XmlSchemaCollection class.

XmlSchemaCollection(XmlNameTable)

Inicjuje nowe wystąpienie klasy XmlSchemaCollection z określonym XmlNameTable.Initializes a new instance of the XmlSchemaCollection class with the specified XmlNameTable. XmlNameTable jest używany podczas ładowania schematów.The XmlNameTable is used when loading schemas.

Właściwości

Count

Pobiera liczbę przestrzeni nazw zdefiniowanych w tej kolekcji.Gets the number of namespaces defined in this collection.

Item[String]

Pobiera XmlSchema skojarzona z danym identyfikatorem URI przestrzeni nazw.Gets the XmlSchema associated with the given namespace URI.

NameTable

Pobiera domyślny XmlNameTable używany przez XmlSchemaCollection podczas ładowania nowych schematów.Gets the default XmlNameTable used by the XmlSchemaCollection when loading new schemas.

Metody

Add(String, String)

Dodaje schemat znajdujący się pod danym adresem URL do kolekcji schematów.Adds the schema located by the given URL into the schema collection.

Add(String, XmlReader)

Dodaje schemat zawarty w XmlReader do kolekcji schematów.Adds the schema contained in the XmlReader to the schema collection.

Add(String, XmlReader, XmlResolver)

Dodaje schemat zawarty w XmlReader do kolekcji schematów.Adds the schema contained in the XmlReader to the schema collection. Określony XmlResolver jest używany do rozwiązywania wszystkich zasobów zewnętrznych.The specified XmlResolver is used to resolve any external resources.

Add(XmlSchema)

Dodaje XmlSchema do kolekcji.Adds the XmlSchema to the collection.

Add(XmlSchema, XmlResolver)

Dodaje XmlSchema do kolekcji.Adds the XmlSchema to the collection. Określony XmlResolver jest używany do rozpoznawania odwołań zewnętrznych.The specified XmlResolver is used to resolve any external references.

Add(XmlSchemaCollection)

Dodaje wszystkie przestrzenie nazw zdefiniowane w danej kolekcji (łącznie ze skojarzonymi z nimi schematami) do tej kolekcji.Adds all the namespaces defined in the given collection (including their associated schemas) to this collection.

Contains(String)

Pobiera wartość wskazującą, czy schemat z określoną przestrzenią nazw znajduje się w kolekcji.Gets a value indicating whether a schema with the specified namespace is in the collection.

Contains(XmlSchema)

Pobiera wartość wskazującą, czy targetNamespace określonego XmlSchema znajduje się w kolekcji.Gets a value indicating whether the targetNamespace of the specified XmlSchema is in the collection.

CopyTo(XmlSchema[], Int32)

Kopiuje wszystkie obiekty XmlSchema z tej kolekcji do danej tablicy, rozpoczynając od danego indeksu.Copies all the XmlSchema objects from this collection into the given array starting at the given index.

Equals(Object)

Określa, czy określony obiekt jest równy bieżącemu obiektowi.Determines whether the specified object is equal to the current object.

(Odziedziczone po Object)
GetEnumerator()

Zapewnia obsługę iteracji stylu "for each" w kolekcji schematów.Provides support for the "for each" style iteration over the collection of schemas.

GetHashCode()

Służy jako domyślna funkcja skrótu.Serves as the default hash function.

(Odziedziczone po Object)
GetType()

Type Pobiera bieżące wystąpienie.Gets the Type of the current instance.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy skróconą kopię bieżącego Objectelementu.Creates a shallow copy of the current Object.

(Odziedziczone po Object)
ToString()

Zwraca ciąg, który reprezentuje bieżący obiekt.Returns a string that represents the current object.

(Odziedziczone po Object)

Zdarzenia

ValidationEventHandler

Ustawia procedurę obsługi zdarzeń do uzyskiwania informacji o błędach walidacji schematu XDR i XML.Sets an event handler for receiving information about the XDR and XML schema validation errors.

Jawne implementacje interfejsu

ICollection.CopyTo(Array, Int32)

Aby uzyskać opis tego elementu członkowskiego, zobacz CopyTo(XmlSchema[], Int32).For a description of this member, see CopyTo(XmlSchema[], Int32).

ICollection.Count

Aby uzyskać opis tego elementu członkowskiego, zobacz Count.For a description of this member, see Count.

ICollection.IsSynchronized

Aby uzyskać opis tego elementu członkowskiego, zobacz ICollection.IsSynchronized.For a description of this member, see ICollection.IsSynchronized.

ICollection.SyncRoot

Aby uzyskać opis tego elementu członkowskiego, zobacz ICollection.SyncRoot.For a description of this member, see ICollection.SyncRoot.

IEnumerable.GetEnumerator()

Aby uzyskać opis tego elementu członkowskiego, zobacz GetEnumerator().For a description of this member, see GetEnumerator().

Metody rozszerzania

Cast<TResult>(IEnumerable)

Rzutuje elementy IEnumerable do określonego typu.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

Filtruje elementy IEnumerable w oparciu o określony typ.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

Włącza przetwarzanie równoległe zapytania.Enables parallelization of a query.

AsQueryable(IEnumerable)

IEnumerable KonwertujeIQueryabledo.Converts an IEnumerable to an IQueryable.

Dotyczy