XmlSchemaDatatype Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Die XmlSchemaDatatype Klasse ist eine abstrakte Klasse zum Zuordnen von XML-Schemadefinitionssprache (XSD)-Typen zu Common Language Runtime (CLR)-Typen.
public ref class XmlSchemaDatatype abstract
public abstract class XmlSchemaDatatype
type XmlSchemaDatatype = class
Public MustInherit Class XmlSchemaDatatype
- Vererbung
-
XmlSchemaDatatype
Beispiele
Das folgende Beispiel zeigt die Verwendung der XmlSchemaDatatype Klasse.
using System;
using System.Xml;
using System.Xml.Schema;
class XMLSchemaExamples
{
public static void Main()
{
XmlTextReader xtr = new XmlTextReader("example.xsd");
XmlSchema schema = XmlSchema.Read(xtr, new ValidationEventHandler(ValidationCallbackOne));
XmlSchemaSet schemaSet = new XmlSchemaSet();
schemaSet.ValidationEventHandler += new ValidationEventHandler(ValidationCallbackOne);
schemaSet.Add(schema);
schemaSet.Compile();
XmlSchema compiledSchema = null;
foreach (XmlSchema schema1 in schemaSet.Schemas())
{
compiledSchema = schema1;
}
foreach (XmlSchemaObject schemaObject in compiledSchema.Items)
{
if (schemaObject.GetType() == typeof(XmlSchemaSimpleType))
{
XmlSchemaSimpleType simpleType = (XmlSchemaSimpleType)schemaObject;
Console.WriteLine("{0} {1}", simpleType.Name, simpleType.Datatype.ValueType);
}
if (schemaObject.GetType() == typeof(XmlSchemaComplexType))
{
XmlSchemaComplexType complexType = (XmlSchemaComplexType)schemaObject;
Console.WriteLine("{0} {1}", complexType.Name, complexType.Datatype.ValueType);
}
}
xtr.Close();
}
public static void ValidationCallbackOne(object sender, ValidationEventArgs args)
{
Console.WriteLine(args.Message);
}
}
Imports System.Xml
Imports System.Xml.Schema
_
Class XMLSchemaExamples
Public Shared Sub Main()
Dim xtr As New XmlTextReader("example.xsd")
Dim schema As XmlSchema = XmlSchema.Read(xtr, New ValidationEventHandler(AddressOf ValidationCallbackOne))
Dim schemaSet As New XmlSchemaSet()
AddHandler schemaSet.ValidationEventHandler, AddressOf ValidationCallbackOne
schemaSet.Add(schema)
schemaSet.Compile()
Dim compiledSchema As XmlSchema = Nothing
For Each schema1 As XmlSchema In schemaSet.Schemas()
compiledSchema = schema1
Next
Dim schemaObject As XmlSchemaObject
For Each schemaObject In compiledSchema.Items
If schemaObject.GetType() Is GetType(XmlSchemaSimpleType) Then
Dim simpleType As XmlSchemaSimpleType = CType(schemaObject, XmlSchemaSimpleType)
Console.WriteLine("{0} {1}", simpleType.Name, simpleType.Datatype.ValueType)
End If
If schemaObject.GetType() Is GetType(XmlSchemaComplexType) Then
Dim complexType As XmlSchemaComplexType = CType(schemaObject, XmlSchemaComplexType)
Console.WriteLine("{0} {1}", complexType.Name, complexType.Datatype.ValueType)
End If
Next schemaObject
xtr.Close()
End Sub
Public Shared Sub ValidationCallbackOne(ByVal sender As Object, ByVal args As ValidationEventArgs)
Console.WriteLine(args.Message)
End Sub
End Class
Die folgende XML-Datei wird für das vorangehende Codebeispiel verwendet.
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:simpleType name="LotteryNumber">
<xs:restriction base="xs:int">
<xs:minInclusive value="1"/>
<xs:maxInclusive value="99"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
Konstruktoren
| Name | Beschreibung |
|---|---|
| XmlSchemaDatatype() |
Initialisiert eine neue Instanz der XmlSchemaDatatype-Klasse. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| TokenizedType |
Wenn sie in einer abgeleiteten Klasse überschrieben werden, ruft den Typ für die |
| TypeCode |
Ruft den XmlTypeCode Wert für den einfachen Typ ab. |
| ValueType |
Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird der ClR-Typ (Common Language Runtime) des Elements ab. |
| Variety |
Ruft den XmlSchemaDatatypeVariety Wert für den einfachen Typ ab. |
Methoden
| Name | Beschreibung |
|---|---|
| ChangeType(Object, Type, IXmlNamespaceResolver) |
Konvertiert den angegebenen Wert, dessen Typ eine der gültigen CLR-Darstellungen (Common Language Runtime) des durch den DURCH dargestellten XmlSchemaDatatypeXML-Schematyps ist, in den angegebenen IXmlNamespaceResolver CLR-Typ, wenn der XmlSchemaDatatype xs:QName-Typ oder ein daraus abgeleiteter Typ darstellt. |
| ChangeType(Object, Type) |
Wandelt den angegebenen Wert um, dessen Typ eine der gültigen CLR-Darstellungen (Common Language Runtime) des durch den durch den DURCH dargestellten XmlSchemaDatatypeXML-Schematyps darstellt, in den angegebenen CLR-Typ. |
| Equals(Object) |
Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht. (Geerbt von Object) |
| GetHashCode() |
Dient als Standardhashfunktion. (Geerbt von Object) |
| GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
| IsDerivedFrom(XmlSchemaDatatype) |
Die IsDerivedFrom(XmlSchemaDatatype) Methode gibt immer zurück |
| MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
| ParseValue(String, XmlNameTable, IXmlNamespaceResolver) |
Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird der |
| ParseValue(String, XmlNameTable, XmlNamespaceManager) |
Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird die angegebene Zeichenfolge anhand eines integrierten oder benutzerdefinierten einfachen Typs überprüft. |
| ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |