Поделиться через


XmlSchemaException Класс

Определение

Возвращает подробные сведения об исключении схемы.

public ref class XmlSchemaException : SystemException
public class XmlSchemaException : SystemException
[System.Serializable]
public class XmlSchemaException : SystemException
type XmlSchemaException = class
    inherit SystemException
[<System.Serializable>]
type XmlSchemaException = class
    inherit SystemException
Public Class XmlSchemaException
Inherits SystemException
Наследование
XmlSchemaException
Производный
Атрибуты

Примеры

В следующем примере показано использование XmlSchemaException класса.

using System;
using System.Xml;
using System.Xml.Schema;
using System.IO;

public class ValidXSD
{
    public static int Main()
    {

        FileStream fs;
        XmlSchema schema;
        try
        {
            fs = new FileStream("example.xsd", FileMode.Open);
            schema = XmlSchema.Read(fs, new ValidationEventHandler(ShowCompileError));

            XmlSchemaSet schemaSet = new XmlSchemaSet();
            schemaSet.ValidationEventHandler += new ValidationEventHandler(ShowCompileError);
            schemaSet.Add(schema);
            schemaSet.Compile();

            XmlSchema compiledSchema = null;

            foreach (XmlSchema schema1 in schemaSet.Schemas())
            {
                compiledSchema = schema1;
            }

            schema = compiledSchema;

            if (schema.IsCompiled)
            {
                // Schema is successfully compiled.
                // Do something with it here.
            }
            return 0;
        }
        catch (XmlSchemaException e)
        {
            Console.WriteLine("LineNumber = {0}", e.LineNumber);
            Console.WriteLine("LinePosition = {0}", e.LinePosition);
            Console.WriteLine("Message = {0}", e.Message);
            return -1;
        }
    }

    private static void ShowCompileError(object sender, ValidationEventArgs e)
    {
        Console.WriteLine("Validation Error: {0}", e.Message);
    }
}
Option Strict On
Option Explicit On

Imports System.Xml
Imports System.Xml.Schema
Imports System.IO

Public Class ValidXSD
    Public Shared Sub Main()
        Dim fs As FileStream
        Dim schema As XmlSchema
        Try
            fs = New FileStream("example.xsd", FileMode.Open)
            schema = XmlSchema.Read(fs, New ValidationEventHandler(AddressOf ShowCompileError))

            Dim schemaSet As New XmlSchemaSet()
            AddHandler schemaSet.ValidationEventHandler, AddressOf ShowCompileError

            schemaSet.Add(schema)
            schemaSet.Compile()

            Dim compiledSchema As XmlSchema = Nothing

            For Each schema1 As XmlSchema In schemaSet.Schemas()
                compiledSchema = schema1
            Next

            schema = compiledSchema

            If schema.IsCompiled Then
                ' Schema is successfully compiled. 
                ' Do something with it here.
            End If

        Catch e As XmlSchemaException
            Console.WriteLine("LineNumber = {0}", e.LineNumber)
            Console.WriteLine("LinePosition = {0}", e.LinePosition)
            Console.WriteLine("Message = {0}", e.Message)
            Console.WriteLine("Source = {0}", e.Source)

        End Try
    End Sub


    Private Shared Sub ShowCompileError(ByVal sender As Object, ByVal e As ValidationEventArgs)
        Console.WriteLine("Validation Error: {0}", e.Message)
    End Sub
End Class

Комментарии

Это важно

Класс XmlSchemaException может содержать конфиденциальную информацию, которая не должна предоставляться в ненадежных сценариях. Например, SourceUri свойство возвращает путь URI к файлу схемы, вызвавшего исключение. Свойство SourceUri не должно быть предоставлено в ненадежных сценариях. Исключения должны обрабатываться должным образом, чтобы эта конфиденциальная информация не предоставлялась в ненадежных сценариях.

Конструкторы

Имя Описание
XmlSchemaException()

Инициализирует новый экземпляр класса XmlSchemaException.

XmlSchemaException(SerializationInfo, StreamingContext)
Устаревшие..

Создает новый XmlSchemaException объект с заданными SerializationInfo и StreamingContext сведениями, содержащими все свойства объекта XmlSchemaException.

XmlSchemaException(String, Exception, Int32, Int32)

Инициализирует новый экземпляр XmlSchemaException класса с указанным сообщением об исключении, а также исходный Exception объект, номер строки и положение строки XML, вызывающего указанное исключение.

XmlSchemaException(String, Exception)

Инициализирует новый экземпляр XmlSchemaException класса с сообщением об исключении и исходным Exception объектом, вызвавшего указанное исключение.

XmlSchemaException(String)

Инициализирует новый экземпляр XmlSchemaException класса с указанным сообщением об исключении.

Свойства

Имя Описание
Data

Возвращает коллекцию пар "ключ-значение", которые предоставляют дополнительные пользовательские сведения об исключении.

(Унаследовано от Exception)
HelpLink

Возвращает или задает ссылку на файл справки, связанный с этим исключением.

(Унаследовано от Exception)
HResult

Возвращает или задает HRESULT, закодированное числовое значение, назначенное определенному исключению.

(Унаследовано от Exception)
InnerException

Возвращает экземпляр Exception, вызвавшего текущее исключение.

(Унаследовано от Exception)
LineNumber

Возвращает номер строки, указывающий, где произошла ошибка.

LinePosition

Возвращает позицию строки, указывающую, где произошла ошибка.

Message

Возвращает описание условия ошибки этого исключения.

Source

Возвращает или задает имя приложения или объекта, вызывающего ошибку.

(Унаследовано от Exception)
SourceSchemaObject

Объект XmlSchemaObject , создающий XmlSchemaException.

SourceUri

Возвращает расположение универсального идентификатора ресурса (URI) схемы, вызвавшей исключение.

StackTrace

Возвращает строковое представление непосредственных кадров в стеке вызовов.

(Унаследовано от Exception)
TargetSite

Возвращает метод, который вызывает текущее исключение.

(Унаследовано от Exception)

Методы

Имя Описание
Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetBaseException()

При переопределении в производном классе возвращает Exception, которая является основной причиной одного или нескольких последующих исключений.

(Унаследовано от Exception)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetObjectData(SerializationInfo, StreamingContext)
Устаревшие..

Выполняет потоковую передачу XmlSchemaException всех свойств в SerializationInfo класс для заданного StreamingContextобъекта.

GetType()

Возвращает тип среды выполнения текущего экземпляра.

(Унаследовано от Exception)
MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
ToString()

Создает и возвращает строковое представление текущего исключения.

(Унаследовано от Exception)

События

Имя Описание
SerializeObjectState
Устаревшие..

Происходит при сериализации исключения для создания объекта состояния исключения, содержащего сериализованные данные об исключении.

(Унаследовано от Exception)

Применяется к