XmlSchemaDatatype Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
A XmlSchemaDatatype classe é uma classe abstrata para mapear tipos XML Schema Definition Language (XSD) para tipos Common Language Runtime (CLR).
public ref class XmlSchemaDatatype abstract
public abstract class XmlSchemaDatatype
type XmlSchemaDatatype = class
Public MustInherit Class XmlSchemaDatatype
- Herança
-
XmlSchemaDatatype
Exemplos
O exemplo seguinte 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 seguinte ficheiro XML é 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
| Name | Description |
|---|---|
| XmlSchemaDatatype() |
Inicializa uma nova instância da XmlSchemaDatatype classe. |
Propriedades
| Name | Description |
|---|---|
| TokenizedType |
Quando sobrescrito numa classe derivada, obtém o tipo para o |
| TypeCode |
Obtém o XmlTypeCode valor para o tipo simples. |
| ValueType |
Quando sobrescrito numa classe derivada, obtém o tipo Common Language Runtime (CLR) do item. |
| Variety |
Obtém o XmlSchemaDatatypeVariety valor para o tipo simples. |
Métodos
| Name | Description |
|---|---|
| ChangeType(Object, Type, IXmlNamespaceResolver) |
Converte o valor especificado, cujo tipo é uma das representações válidas do Common Language Runtime (CLR) do tipo de esquema XML representado pelo XmlSchemaDatatype, para o tipo CLR especificado usando se IXmlNamespaceResolver o XmlSchemaDatatype representa o tipo xs:QName ou um tipo derivado dele. |
| ChangeType(Object, Type) |
Converte o valor especificado, cujo tipo é uma das representações válidas do Common Language Runtime (CLR) do tipo de esquema XML representado pelo XmlSchemaDatatype, para o tipo CLR especificado. |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| IsDerivedFrom(XmlSchemaDatatype) |
O IsDerivedFrom(XmlSchemaDatatype) método devolve |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| ParseValue(String, XmlNameTable, IXmlNamespaceResolver) |
Quando sobreposto numa classe derivada, valida o |
| ParseValue(String, XmlNameTable, XmlNamespaceManager) |
Quando sobreposta numa classe derivada, valida a cadeia especificada contra um tipo simples incorporado ou definido pelo utilizador. |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |