XmlSchemaDatatype Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
La XmlSchemaDatatype classe è una classe astratta per il mapping di tipi XSD (XML Schema Definition Language) a tipi CLR (Common Language Runtime).
public ref class XmlSchemaDatatype abstract
public abstract class XmlSchemaDatatype
type XmlSchemaDatatype = class
Public MustInherit Class XmlSchemaDatatype
- Ereditarietà
-
XmlSchemaDatatype
Esempio
Nell'esempio seguente viene illustrato l'uso della 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
Il file XML seguente viene usato per l'esempio di codice precedente.
<?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>
Costruttori
| Nome | Descrizione |
|---|---|
| XmlSchemaDatatype() |
Inizializza una nuova istanza della classe XmlSchemaDatatype. |
Proprietà
| Nome | Descrizione |
|---|---|
| TokenizedType |
In caso di override in una classe derivata, ottiene il tipo per l'oggetto |
| TypeCode |
Ottiene il XmlTypeCode valore per il tipo semplice. |
| ValueType |
In caso di override in una classe derivata, ottiene il tipo CLR (Common Language Runtime) dell'elemento. |
| Variety |
Ottiene il XmlSchemaDatatypeVariety valore per il tipo semplice. |
Metodi
| Nome | Descrizione |
|---|---|
| ChangeType(Object, Type, IXmlNamespaceResolver) |
Converte il valore specificato, il cui tipo è una delle rappresentazioni CLR (Common Language Runtime) valide del tipo xml Schema rappresentato da XmlSchemaDatatype, nel tipo CLR specificato utilizzando IXmlNamespaceResolver se XmlSchemaDatatype rappresenta il tipo xs:QName o un tipo derivato da esso. |
| ChangeType(Object, Type) |
Converte il valore specificato, il cui tipo è una delle rappresentazioni CLR (Common Language Runtime) valide del tipo xml Schema rappresentato da XmlSchemaDatatype, nel tipo CLR specificato. |
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| IsDerivedFrom(XmlSchemaDatatype) |
Il IsDerivedFrom(XmlSchemaDatatype) metodo restituisce |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| ParseValue(String, XmlNameTable, IXmlNamespaceResolver) |
Quando sottoposto a override in una classe derivata, convalida l'oggetto |
| ParseValue(String, XmlNameTable, XmlNamespaceManager) |
In caso di override in una classe derivata, convalida la stringa specificata rispetto a un tipo semplice predefinito o definito dall'utente. |
| ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |