Partager via


XmlSchemaCollection Classe

Définition

Attention

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

Attention

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

Attention

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

Attention

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

Contient un cache de schémas en langage XSD (XML Schema Definition) et de schémas XDR (XML-Data Reduced). La classe XmlSchemaCollection est obsolète. Utilisez plutôt 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
Héritage
XmlSchemaCollection
Attributs
Implémente

Exemples

L’exemple suivant valide un document XML à l’aide du XmlSchemaCollectionfichier .

#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

Remarques

Les schémas sont chargés à l’aide de la Add méthode, au moment où le schéma est associé à un URI (Uniform Resource Identifier). Pour les schémas XML, il s’agit généralement de la targetNamespace propriété du schéma.

Bien que cette classe stocke les schémas XML et les schémas XDR, toute méthode et propriété qui accepte ou retourne une XmlSchema application aux schémas XML uniquement.

Cette version du produit prend en charge la recommandation de schéma XML W3C (World Wide Web Consortium) située dans la partie 1 du schéma XML : structures et schéma XML Partie 2 : Types de données. Un schéma XML doit référencer l’espace de noms http://www.w3.org/2001/XMLSchema de schéma W3C dans son élément de schéma. Consultez la méthode d’un Add exemple.

XmlSchemaCollection peut être utilisé pour XmlValidatingReader une validation efficace des données.

Important

La XmlSchemaCollection classe est obsolète dans Microsoft .NET Framework version 2.0 et a été remplacée par la XmlSchemaSet classe.

Constructeurs

XmlSchemaCollection()

Initialise une nouvelle instance de la classe XmlSchemaCollection.

XmlSchemaCollection(XmlNameTable)

Initialise une nouvelle instance de la classe XmlSchemaCollection avec le XmlNameTable spécifié. XmlNameTable est utilisé lors du chargement des schémas.

Propriétés

Count

Obtient le nombre d’espaces de noms définis dans cette collection.

Item[String]

Obtient le XmlSchema associé à l'URI d'espace de noms donné.

NameTable

Obtient le XmlNameTable par défaut utilisé par XmlSchemaCollection lors du chargement de nouveaux schémas.

Méthodes

Add(String, String)

Ajoute le schéma indiqué par l'URL donnée à la collection de schémas.

Add(String, XmlReader)

Ajoute le schéma contenu dans XmlReader à la collection de schémas.

Add(String, XmlReader, XmlResolver)

Ajoute le schéma contenu dans XmlReader à la collection de schémas. Le XmlResolver spécifié permet de résoudre les ressources externes.

Add(XmlSchema)

Ajoute le XmlSchema à la collection.

Add(XmlSchema, XmlResolver)

Ajoute le XmlSchema à la collection. Le XmlResolver spécifié permet de résoudre les références externes.

Add(XmlSchemaCollection)

Ajoute tous les espaces de noms définis dans la collection donnée (y compris les schémas associés) à cette collection.

Contains(String)

Obtient une valeur indiquant si le schéma comportant l'espace de noms spécifié fait partie de la collection.

Contains(XmlSchema)

Obtient une valeur indiquant si le targetNamespace du XmlSchema spécifié se trouve dans la collection.

CopyTo(XmlSchema[], Int32)

Copie tous les objets XmlSchema de la collection dans le tableau donné, en commençant à l'index spécifié.

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetEnumerator()

Fournit une prise en charge de l’itération de style « For each » sur la collection de schémas.

GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

Événements

ValidationEventHandler

Définit un gestionnaire d’événements pour recevoir des informations sur les erreurs de validation des schémas XDR et XML.

Implémentations d’interfaces explicites

ICollection.CopyTo(Array, Int32)

Pour obtenir une description de ce membre, consultez CopyTo(XmlSchema[], Int32).

ICollection.Count

Pour obtenir une description de ce membre, consultez Count.

ICollection.IsSynchronized

Pour obtenir une description de ce membre, consultez ICollection.IsSynchronized.

ICollection.SyncRoot

Pour obtenir une description de ce membre, consultez ICollection.SyncRoot.

IEnumerable.GetEnumerator()

Pour obtenir une description de ce membre, consultez GetEnumerator().

Méthodes d’extension

Cast<TResult>(IEnumerable)

Effectue un cast des éléments d'un IEnumerable vers le type spécifié.

OfType<TResult>(IEnumerable)

Filtre les éléments d'un IEnumerable en fonction du type spécifié.

AsParallel(IEnumerable)

Active la parallélisation d'une requête.

AsQueryable(IEnumerable)

Convertit un IEnumerable en IQueryable.

S’applique à