XmlSchemaDatatype Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Třída XmlSchemaDatatype je abstraktní třída pro mapování typů XSD (XML Schema Definition Language) (CLR).
public ref class XmlSchemaDatatype abstract
public abstract class XmlSchemaDatatype
type XmlSchemaDatatype = class
Public MustInherit Class XmlSchemaDatatype
- Dědičnost
-
XmlSchemaDatatype
Příklady
Následující příklad ukazuje použití XmlSchemaDatatype třídy.
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
Následující soubor XML se používá pro předchozí příklad kódu.
<?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>
Konstruktory
| Name | Description |
|---|---|
| XmlSchemaDatatype() |
Inicializuje novou instanci XmlSchemaDatatype třídy. |
Vlastnosti
| Name | Description |
|---|---|
| TokenizedType |
Při přepsání v odvozené třídě získá typ pro |
| TypeCode |
XmlTypeCode Získá hodnotu pro jednoduchý typ. |
| ValueType |
Při přepsání v odvozené třídě získá typ CLR (Common Language Runtime) položky. |
| Variety |
XmlSchemaDatatypeVariety Získá hodnotu pro jednoduchý typ. |
Metody
| Name | Description |
|---|---|
| ChangeType(Object, Type, IXmlNamespaceResolver) |
Převede zadanou hodnotu, jejíž typ je jedním z platných reprezentací CLR (Common Language Runtime) typu schématu XML reprezentovaného XmlSchemaDatatypetypem , na typ CLR zadaný pomocí IXmlNamespaceResolver typu if XmlSchemaDatatype představuje typ xs:QName nebo typ odvozený z něj. |
| ChangeType(Object, Type) |
Převede zadanou hodnotu, jejíž typ je jedním z platných reprezentací CLR (Common Language Runtime) typu schématu XML reprezentovaného typem XmlSchemaDatatype, na zadaný typ CLR. |
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| IsDerivedFrom(XmlSchemaDatatype) |
Metoda IsDerivedFrom(XmlSchemaDatatype) vždy vrátí |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| ParseValue(String, XmlNameTable, IXmlNamespaceResolver) |
Při přepsání v odvozené třídě ověří |
| ParseValue(String, XmlNameTable, XmlNamespaceManager) |
Při přepsání v odvozené třídě ověří zadaný řetězec proti předdefinovanému nebo uživatelem definovanému jednoduchému typu. |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |