XmlSchemaCollection Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Внимание!
Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation. https://go.microsoft.com/fwlink/?linkid=14202
Внимание!
XmlSchemaCollection has been deprecated. Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation.
Внимание!
XmlSchemaCollection has been deprecated. Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation instead.
Внимание!
Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation. http://go.microsoft.com/fwlink/?linkid=14202
Содержит кэш языка определения схемы XML (XSD) и схем XDR. Класс XmlSchemaCollection устарел. Взамен рекомендуется использовать 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
- Наследование
-
XmlSchemaCollection
- Атрибуты
- Реализации
Примеры
В следующем примере выполняется проверка XML-документа с помощью 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) пространства имен. Для XML-схем обычно это свойство targetNamespace
схемы.
Хотя этот класс хранит как схемы XML, так и схемы XDR, любой метод и свойство, принимающее или возвращающее XmlSchema значение, применяется только к схемам XML.
Эта версия продукта поддерживает рекомендацию по схеме XML консорциума W3C, расположенную в части 1. Структуры и схема XML, часть 2. Типы данных. Xml-схема должна ссылаться на пространство http://www.w3.org/2001/XMLSchema
имен схемы W3C в его элементе схемы. Add См. пример метода.
XmlSchemaCollection
может использоваться для эффективной XmlValidatingReader проверки данных.
Важно!
Класс XmlSchemaCollection устарел в Microsoft платформа .NET Framework версии 2.0 и заменен классомXmlSchemaSet.
Конструкторы
XmlSchemaCollection() |
Инициализирует новый экземпляр класса |
XmlSchemaCollection(XmlNameTable) |
Инициализирует новый экземпляр класса |
Свойства
Count |
Возвращает количество пространств имен, определенных в данной коллекции. |
Item[String] |
Получает XmlSchema, связанную с указанным URI-пространством имен. |
NameTable |
Получает значение по умолчанию |
Методы
Add(String, String) |
Добавляет в коллекцию схему, находящуюся по указанному URL-адресу. |
Add(String, XmlReader) |
Добавляет схему, содержащуюся в XmlReader в коллекцию схем. |
Add(String, XmlReader, XmlResolver) |
Добавляет схему, содержащуюся в XmlReader в коллекцию схем. Заданный XmlResolver используется для опознания каких-либо внешних ресурсов. |
Add(XmlSchema) |
Добавляет XmlSchema в коллекцию. |
Add(XmlSchema, XmlResolver) |
Добавляет XmlSchema в коллекцию. Заданный XmlResolver используется для опознания каких-либо внешних ссылок. |
Add(XmlSchemaCollection) |
Добавляет в данную коллекцию все пространства имен, определенные в указанной коллекции (включая связанные с ними схемы). |
Contains(String) |
Возвращает значение, которое показывает, присутствует ли схема с указанным пространством имен в коллекции. |
Contains(XmlSchema) |
Получает значение, которое показывает, находится ли |
CopyTo(XmlSchema[], Int32) |
Копирует все объекты |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetEnumerator() |
Предоставляет поддержку для итерации в стиле "for each" ("для каждого") по коллекции схем. |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
События
ValidationEventHandler |
Задает обработчик событий на получение информации об ошибках проверки XDR- и XML-схем. |
Явные реализации интерфейса
ICollection.CopyTo(Array, Int32) |
Описание этого члена см. в разделе CopyTo(XmlSchema[], Int32). |
ICollection.Count |
Описание этого члена см. в разделе Count. |
ICollection.IsSynchronized |
Описание этого члена см. в разделе ICollection.IsSynchronized. |
ICollection.SyncRoot |
Описание этого члена см. в разделе ICollection.SyncRoot. |
IEnumerable.GetEnumerator() |
Описание этого члена см. в разделе GetEnumerator(). |
Методы расширения
Cast<TResult>(IEnumerable) |
Приводит элементы объекта IEnumerable к заданному типу. |
OfType<TResult>(IEnumerable) |
Выполняет фильтрацию элементов объекта IEnumerable по заданному типу. |
AsParallel(IEnumerable) |
Позволяет осуществлять параллельный запрос. |
AsQueryable(IEnumerable) |
Преобразовывает коллекцию IEnumerable в объект IQueryable. |