Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Legt einen Ereignishandler zum Empfangen von Informationen über die XDR- und XML-Schema-Validierungsfehler.
Namespace: System.Xml.Schema
Assembly: System.Xml (in system.xml.dll)
Syntax
'Declaration
Public Event ValidationEventHandler As ValidationEventHandler
'Usage
Dim instance As XmlSchemaCollection
Dim handler As ValidationEventHandler
AddHandler instance.ValidationEventHandler, handler
public event ValidationEventHandler ValidationEventHandler
public:
event ValidationEventHandler^ ValidationEventHandler {
void add (ValidationEventHandler^ value);
void remove (ValidationEventHandler^ value);
}
/** @event */
public void add_ValidationEventHandler (ValidationEventHandler value)
/** @event */
public void remove_ValidationEventHandler (ValidationEventHandler value)
JScript unterstützt die Verwendung von Ereignissen, aber nicht die Deklaration von neuen Ereignissen.
Hinweise
Diese Ereignisse treten ein, wenn die Schemas der Auflistung hinzugefügt werden. Wenn kein Ereignishandler bereitgestellt ist, wird eine XmlSchemaException bei jeder Validierung ausgelöst, bei der Severity XmlSeverityType.Error ist. Zum Angeben eines Ereignishandlers definieren Sie eine Rückruffunktion, und fügen Sie diese dem ValidationEventHandler hinzu.
Wichtig
Die XmlSchemaCollection-Klasse ist in Version 2.0 von .NET Framework veraltet und wurde durch die XmlSchemaSet-Klasse ersetzt.
Beispiel
Das folgende Beispiel veranschaulicht das Festlegen eines Ereignishandlers für die Behandlung ungültiger XML-Schemas.
Imports System
Imports System.IO
Imports System.Xml
Imports System.Xml.Schema
public class Sample
public shared sub Main ()
'Create the schema collection.
Dim xsc as XmlSchemaCollection = new XmlSchemaCollection()
'Set an event handler to manage invalid schemas.
AddHandler xsc.ValidationEventHandler, AddressOf ValidationCallBack
'Add the schema to the collection.
xsc.Add(nothing, "invalid.xsd")
end sub
'Display the schema error information.
Private shared sub ValidationCallBack (sender as object, args as ValidationEventArgs)
Console.WriteLine("Invalid XSD schema: " + args.Exception.Message)
end sub
end class
using System;
using System.IO;
using System.Xml;
using System.Xml.Schema;
public class Sample
{
public static void Main (){
//Create the schema collection.
XmlSchemaCollection xsc = new XmlSchemaCollection();
//Set an event handler to manage invalid schemas.
xsc.ValidationEventHandler += new ValidationEventHandler (ValidationCallBack);
//Add the schema to the collection.
xsc.Add(null, "invalid.xsd");
}
//Display the schema error information.
private static void ValidationCallBack (object sender, ValidationEventArgs args){
Console.WriteLine("Invalid XSD schema: " + args.Exception.Message);
}
}
#using <System.Xml.dll>
#using <System.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
using namespace System::Xml::Schema;
public ref class Sample
{
private:
//Display the schema error information.
static void ValidationCallBack( Object^ sender, ValidationEventArgs^ args )
{
Console::WriteLine( "Invalid XSD schema: {0}", args->Exception->Message );
}
public:
static void main()
{
// Create the schema collection.
XmlSchemaCollection^ xsc = gcnew XmlSchemaCollection;
//Set an event handler to manage invalid schemas.
xsc->ValidationEventHandler += gcnew ValidationEventHandler( Sample::ValidationCallBack );
//Add the schema to the collection.
xsc->Add( nullptr, "invalid.xsd" );
}
};
int main()
{
Sample::main();
}
import System.*;
import System.IO.*;
import System.Xml.*;
import System.Xml.Schema.*;
public class Sample
{
public static void main(String[] args)
{
//Create the schema collection.
XmlSchemaCollection xSc = new XmlSchemaCollection();
//Set an event handler to manage invalid schemas.
xSc.add_ValidationEventHandler(new ValidationEventHandler(
ValidationCallBack));
//Add the schema to the collection.
xSc.Add(null, "invalid.xsd");
} //main
//Display the schema error information.
private static void ValidationCallBack(Object sender,
ValidationEventArgs args)
{
Console.WriteLine("Invalid XSD schema: " + args.get_Exception().
get_Message());
} //ValidationCallBack
} //Sample
import System
import System.IO
import System.Xml
import System.Xml.Schema
public class Sample
{
public static function Main (){
//Create the schema collection.
var xsc : XmlSchemaCollection = new XmlSchemaCollection();
//Set an event handler to manage invalid schemas.
xsc.add_ValidationEventHandler(ValidationCallBack);
//Add the schema to the collection.
xsc.Add(null, "invalid.xsd");
}
//Display the schema error information.
private static function ValidationCallBack(sender, args : ValidationEventArgs){
Console.WriteLine("Invalid XSD schema: " + args.Exception.Message);
}
}
Im vorhergehenden Beispiel wird die Datei invalid.xsd als Eingabe verwendet.
<xsd:schema xmlns:xsd='http://www.w3.org/2001/XMLSchema' >
<xsd:complexType name="personName">
<xsd:sequence>
<xsd:element name="title" minOccurs="0" maxOccurs="1"/>
<xsd:element name="forename" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="surname"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="simpleName">
<xsd:complexContent>
<xsd:restriction base="personName">
<xsd:sequence>
<xsd:element name="title" minOccurs="0" maxOccurs="0"/>
<xsd:element name="firstname" minOccurs="1" maxOccurs="1"/>
<xsd:element name="surname"/>
</xsd:sequence>
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
</xsd:schema>
Plattformen
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
Siehe auch
Referenz
XmlSchemaCollection-Klasse
XmlSchemaCollection-Member
System.Xml.Schema-Namespace