XmlSchemaCollection 클래스

정의

경고

이 API는 현재 사용되지 않습니다.

XSD(XML 스키마 정의 언어)와 XDR(XML-Data Reduced) 스키마의 캐시를 포함합니다.Contains a cache of XML Schema definition language (XSD) and XML-Data Reduced (XDR) schemas. XmlSchemaCollection 클래스는 사용되지 않습니다.The XmlSchemaCollection class is obsolete. 대신 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
상속
XmlSchemaCollection
특성
구현

예제

다음 예에서는 XmlSchemaCollection를 사용 하 여 XML 문서의 유효성을 검사 합니다.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

설명

스키마는 Add 메서드를 사용 하 여 로드 됩니다. 이때 스키마는 네임 스페이스 URI (Uniform Resource Identifier)와 연결 되어 있습니다.Schemas are loaded using the Add method, at which time the schema is associated with a namespace Uniform Resource Identifier (URI). XML 스키마의 경우이 속성은 일반적으로 스키마의 targetNamespace 속성입니다.For XML Schemas, this will typically be the targetNamespace property of the schema.

이 클래스는 XML 스키마와 XDR 스키마를 모두 저장 하지만 XmlSchema를 사용 하거나 반환 하는 메서드 및 속성은 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.

이 버전의 제품은 XML 스키마 1 부에 있는 W3C (World Wide Web 컨소시엄) XML 스키마 권장 사항을 지원 합니다. 구조XML 스키마 파트 2: 데이터 형식이.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. XML 스키마는 해당 schema 요소에 http://www.w3.org/2001/XMLSchema W3C 스키마 네임 스페이스를 참조 해야 합니다.An XML Schema must reference the W3C Schema namespace http://www.w3.org/2001/XMLSchema in its schema element. 예제는 Add 메서드를 참조 하세요.See the Add method for an example.

XmlSchemaCollection는 효율적인 데이터 유효성 검사를 위해 XmlValidatingReader에서 사용할 수 있습니다.XmlSchemaCollection can be used by XmlValidatingReader for efficient data validation.

중요

XmlSchemaCollection 클래스는 Microsoft .NET Framework 버전 2.0에서 사용 되지 않으며 XmlSchemaSet 클래스로 대체 되었습니다.The XmlSchemaCollection class is obsolete in the Microsoft .NET Framework version 2.0 and has been replaced by the XmlSchemaSet class.

생성자

XmlSchemaCollection()

XmlSchemaCollection 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the XmlSchemaCollection class.

XmlSchemaCollection(XmlNameTable)

지정된 XmlSchemaCollection를 사용하여 XmlNameTable 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the XmlSchemaCollection class with the specified XmlNameTable. XmlNameTable은 스키마를 로드할 때 사용합니다.The XmlNameTable is used when loading schemas.

속성

Count

이 컬렉션에 정의된 네임스페이스의 수를 가져옵니다.Gets the number of namespaces defined in this collection.

Item[String]

지정한 네임스페이스 URI에 연결된 XmlSchema를 가져옵니다.Gets the XmlSchema associated with the given namespace URI.

NameTable

새 스키마를 로드할 때 XmlNameTable에서 사용하는 기본 XmlSchemaCollection을 가져옵니다.Gets the default XmlNameTable used by the XmlSchemaCollection when loading new schemas.

메서드

Add(String, String)

지정한 URL에 의해 경로가 지정된 스키마를 스키마 컬렉션에 추가합니다.Adds the schema located by the given URL into the schema collection.

Add(String, XmlReader)

XmlReader에 포함된 스키마를 스키마 컬렉션에 추가합니다.Adds the schema contained in the XmlReader to the schema collection.

Add(String, XmlReader, XmlResolver)

XmlReader에 포함된 스키마를 스키마 컬렉션에 추가합니다.Adds the schema contained in the XmlReader to the schema collection. 지정된 XmlResolver는 외부 리소스를 확인하는 데 사용됩니다.The specified XmlResolver is used to resolve any external resources.

Add(XmlSchema)

XmlSchema를 컬렉션에 추가합니다.Adds the XmlSchema to the collection.

Add(XmlSchema, XmlResolver)

XmlSchema를 컬렉션에 추가합니다.Adds the XmlSchema to the collection. 지정된 XmlResolver는 외부 참조를 확인하는 데 사용됩니다.The specified XmlResolver is used to resolve any external references.

Add(XmlSchemaCollection)

지정한 컬렉션에 정의된 네임스페이스(연결된 스키마 포함)를 모두 이 컬렉션에 추가합니다.Adds all the namespaces defined in the given collection (including their associated schemas) to this collection.

Contains(String)

지정된 네임스페이스를 가진 스키마가 컬렉션에 있는지를 나타내는 값을 가져옵니다.Gets a value indicating whether a schema with the specified namespace is in the collection.

Contains(XmlSchema)

지정된 XmlSchematargetNamespace가 컬렉션에 있는지 여부를 나타내는 값을 가져옵니다.Gets a value indicating whether the targetNamespace of the specified XmlSchema is in the collection.

CopyTo(XmlSchema[], Int32)

지정된 인덱스에서 시작하여 지정된 배열에 이 컬렉션의 XmlSchema 개체를 모두 복사합니다.Copies all the XmlSchema objects from this collection into the given array starting at the given index.

Equals(Object)

지정한 개체와 현재 개체가 같은지 여부를 확인합니다.Determines whether the specified object is equal to the current object.

(다음에서 상속됨 Object)
GetEnumerator()

스키마 컬렉션에 대해 개별 스타일 반복을 지원합니다.Provides support for the "for each" style iteration over the collection of schemas.

GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(다음에서 상속됨 Object)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(다음에서 상속됨 Object)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object.

(다음에서 상속됨 Object)

이벤트

ValidationEventHandler

XDR 및 XML 스키마 유효성 검사 오류에 대한 정보를 받는 이벤트 처리기를 설정합니다.Sets an event handler for receiving information about the XDR and XML schema validation errors.

명시적 인터페이스 구현

ICollection.CopyTo(Array, Int32)

이 멤버에 대한 설명은 CopyTo(XmlSchema[], Int32)를 참조하세요.For a description of this member, see CopyTo(XmlSchema[], Int32).

ICollection.Count

이 멤버에 대한 설명은 Count를 참조하세요.For a description of this member, see Count.

ICollection.IsSynchronized

이 멤버에 대한 설명은 ICollection.IsSynchronized를 참조하세요.For a description of this member, see ICollection.IsSynchronized.

ICollection.SyncRoot

이 멤버에 대한 설명은 ICollection.SyncRoot를 참조하세요.For a description of this member, see ICollection.SyncRoot.

IEnumerable.GetEnumerator()

이 멤버에 대한 설명은 GetEnumerator()를 참조하세요.For a description of this member, see GetEnumerator().

확장 메서드

Cast<TResult>(IEnumerable)

IEnumerable의 요소를 지정된 형식으로 캐스팅합니다.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

지정된 형식에 따라 IEnumerable의 요소를 필터링합니다.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

쿼리를 병렬화할 수 있도록 합니다.Enables parallelization of a query.

AsQueryable(IEnumerable)

IEnumerableIQueryable로 변환합니다.Converts an IEnumerable to an IQueryable.

적용 대상