XmlSchemaDatatype Classe

Definição

A XmlSchemaDatatype classe é uma classe abstrata para mapear tipos XSD (linguagem de definição de esquema XML) para tipos CLR (Common Language Runtime).

public ref class XmlSchemaDatatype abstract
public abstract class XmlSchemaDatatype
type XmlSchemaDatatype = class
Public MustInherit Class XmlSchemaDatatype
Herança
XmlSchemaDatatype

Exemplos

O exemplo a seguir mostra o uso da XmlSchemaDatatype classe.

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

O arquivo XML a seguir é usado para o exemplo de código anterior.

<?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>

Construtores

Nome Description
XmlSchemaDatatype()

Inicializa uma nova instância da classe XmlSchemaDatatype.

Propriedades

Nome Description
TokenizedType

Quando substituído em uma classe derivada, obtém o tipo da string especificação do W3C (World Wide Web Consortium) XML 1.0.

TypeCode

Obtém o XmlTypeCode valor do tipo simples.

ValueType

Quando substituído em uma classe derivada, obtém o tipo CLR (Common Language Runtime) do item.

Variety

Obtém o XmlSchemaDatatypeVariety valor do tipo simples.

Métodos

Nome Description
ChangeType(Object, Type, IXmlNamespaceResolver)

Converte o valor especificado, cujo tipo é uma das representações válidas do CLR (Common Language Runtime) do tipo de esquema XML representado pelo XmlSchemaDatatypetipo CLR especificado usando o IXmlNamespaceResolverXmlSchemaDatatype tipo xs:QName ou um tipo derivado dele.

ChangeType(Object, Type)

Converte o valor especificado, cujo tipo é uma das representações CLR (Common Language Runtime) válidas do tipo de esquema XML representado pelo XmlSchemaDatatypetipo CLR especificado.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
IsDerivedFrom(XmlSchemaDatatype)

O IsDerivedFrom(XmlSchemaDatatype) método sempre retorna false.

MemberwiseClone()

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
ParseValue(String, XmlNameTable, IXmlNamespaceResolver)

Quando substituído em uma classe derivada, valida o string especificado em relação a um tipo simples interno ou definido pelo usuário.

ParseValue(String, XmlNameTable, XmlNamespaceManager)

Quando substituído em uma classe derivada, valida a cadeia de caracteres especificada em relação a um tipo simples interno ou definido pelo usuário.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Aplica-se a