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
.
#using <mscorlib.dll>
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
using namespace System::Xml::Schema;
class ValidXsd
{
public:
static void Main()
{
FileStream^ fs;
XmlSchema^ schema;
try
{
fs = gcnew FileStream("example.xsd", FileMode::Open);
schema = XmlSchema::Read(fs, gcnew ValidationEventHandler(ShowCompileError));
XmlSchemaSet^ schemaSet = gcnew XmlSchemaSet();
schemaSet->ValidationEventHandler += gcnew ValidationEventHandler(ShowCompileError);
schemaSet->Add(schema);
schemaSet->Compile();
XmlSchema^ compiledSchema;
for each (XmlSchema^ schema1 in schemaSet->Schemas())
{
compiledSchema = schema1;
}
schema = compiledSchema;
if (schema->IsCompiled)
{
// Schema is successfully compiled.
// Do something with it here.
}
}
catch (XmlSchemaException^ e)
{
Console::WriteLine("LineNumber = {0}", e->LineNumber);
Console::WriteLine("LinePosition = {0}", e->LinePosition);
Console::WriteLine("Message = {0}", e->Message);
}
}
static void ShowCompileError(Object^ sender, ValidationEventArgs^ e)
{
Console::WriteLine("Validation Error: {0}", e->Message);
}
};
int main()
{
ValidXsd::Main();
Console::ReadLine();
return 0;
};
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(String) |
Инициализирует новый экземпляр класса XmlSchemaException с указанным сообщением об исключении. |
XmlSchemaException(String, Exception) |
Инициализирует новый экземпляр класса XmlSchemaException с сообщением об исключении и исходным объектом Exception, вызвавшим указанное исключение. |
XmlSchemaException(String, Exception, Int32, Int32) |
Инициализация нового экземпляра класса XmlSchemaException с указанным сообщением исключения и исходным объектом Exception, номером строки и размещением XML, вызвавшими указанное исключение. |
Свойства
Data |
Возвращает коллекцию пар «ключ-значение», предоставляющую дополнительные сведения об исключении. (Унаследовано от Exception) |
HelpLink |
Получает или задает ссылку на файл справки, связанный с этим исключением. (Унаследовано от Exception) |
HResult |
Возвращает или задает HRESULT — кодированное числовое значение, присвоенное определенному исключению. (Унаследовано от Exception) |
InnerException |
Возвращает экземпляр класса Exception, который вызвал текущее исключение. (Унаследовано от Exception) |
LineNumber |
Получает номер строки, показывающий, где произошла ошибка. |
LinePosition |
Получает размещение строки, показывающее, где произошла ошибка. |
Message |
Получает описание условий возникновения ошибки для этого исключения. |
Source |
Возвращает или задает имя приложения или объекта, вызывавшего ошибку. (Унаследовано от Exception) |
SourceSchemaObject |
Объект |
SourceUri |
Получает размещение URI схемы, которая вызвала исключение. |
StackTrace |
Получает строковое представление непосредственных кадров в стеке вызова. (Унаследовано от Exception) |
TargetSite |
Возвращает метод, создавший текущее исключение. (Унаследовано от Exception) |
Методы
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetBaseException() |
При переопределении в производном классе возвращает исключение Exception, которое является первопричиной одного или нескольких последующих исключений. (Унаследовано от Exception) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetObjectData(SerializationInfo, StreamingContext) |
Переносит все свойства |
GetType() |
Возвращает тип среды выполнения текущего экземпляра. (Унаследовано от Exception) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
ToString() |
Создает и возвращает строковое представление текущего исключения. (Унаследовано от Exception) |
События
SerializeObjectState |
Устаревшие..
Возникает, когда исключение сериализовано для создания объекта состояния исключения, содержащего сериализованные данные об исключении. (Унаследовано от Exception) |