XmlSchemaEnumerationFacet Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Representerar aspekten enumeration från XML-schemat enligt vad som anges av World Wide Web Consortium (W3C). Den här klassen anger en lista med giltiga värden för ett simpleType-element. Deklarationen finns i en restriction deklaration.
public ref class XmlSchemaEnumerationFacet : System::Xml::Schema::XmlSchemaFacet
public class XmlSchemaEnumerationFacet : System.Xml.Schema.XmlSchemaFacet
type XmlSchemaEnumerationFacet = class
inherit XmlSchemaFacet
Public Class XmlSchemaEnumerationFacet
Inherits XmlSchemaFacet
- Arv
Exempel
I följande exempel visas hur klassen används XmlSchemaEnumerationFacet .
using System;
using System.Xml;
using System.Xml.Schema;
class XMLSchemaExamples
{
public static void Main()
{
XmlSchema schema = new XmlSchema();
// <xs:simpleType name="SizeType">
XmlSchemaSimpleType SizeType = new XmlSchemaSimpleType();
SizeType.Name = "SizeType";
// <xs:restriction base="xs:string">
XmlSchemaSimpleTypeRestriction restriction = new XmlSchemaSimpleTypeRestriction();
restriction.BaseTypeName = new XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");
// <xs:enumeration value="Small"/>
XmlSchemaEnumerationFacet enumerationSmall = new XmlSchemaEnumerationFacet();
enumerationSmall.Value = "Small";
restriction.Facets.Add(enumerationSmall);
// <xs:enumeration value="Medium"/>
XmlSchemaEnumerationFacet enumerationMedium = new XmlSchemaEnumerationFacet();
enumerationMedium.Value = "Medium";
restriction.Facets.Add(enumerationMedium);
// <xs:enumeration value="Large"/>
XmlSchemaEnumerationFacet enumerationLarge = new XmlSchemaEnumerationFacet();
enumerationLarge.Value = "Large";
restriction.Facets.Add(enumerationLarge);
SizeType.Content = restriction;
schema.Items.Add(SizeType);
// <xs:element name="Item">
XmlSchemaElement elementItem = new XmlSchemaElement();
elementItem.Name = "Item";
// <xs:complexType>
XmlSchemaComplexType complexType = new XmlSchemaComplexType();
// <xs:attribute name="Size" type="SizeType"/>
XmlSchemaAttribute attributeSize = new XmlSchemaAttribute();
attributeSize.Name = "Size";
attributeSize.SchemaTypeName = new XmlQualifiedName("SizeType", "");
complexType.Attributes.Add(attributeSize);
elementItem.SchemaType = complexType;
schema.Items.Add(elementItem);
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;
}
XmlNamespaceManager nsmgr = new XmlNamespaceManager(new NameTable());
nsmgr.AddNamespace("xs", "http://www.w3.org/2001/XMLSchema");
compiledSchema.Write(Console.Out, nsmgr);
}
public static void ValidationCallbackOne(object sender, ValidationEventArgs args)
{
Console.WriteLine(args.Message);
}
}
Option Strict On
Option Explicit On
Imports System.Xml
Imports System.Xml.Schema
Class XMLSchemaExamples
Public Shared Sub Main()
Dim schema As New XmlSchema()
' <xs:simpleType name="SizeType">
Dim SizeType As New XmlSchemaSimpleType()
SizeType.Name = "SizeType"
' <xs:restriction base="xs:string">
Dim restriction As New XmlSchemaSimpleTypeRestriction()
restriction.BaseTypeName = New XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema")
' <xs:enumeration value="Small"/>
Dim enumerationSmall As New XmlSchemaEnumerationFacet()
enumerationSmall.Value = "Small"
restriction.Facets.Add(enumerationSmall)
' <xs:enumeration value="Medium"/>
Dim enumerationMedium As New XmlSchemaEnumerationFacet()
enumerationMedium.Value = "Medium"
restriction.Facets.Add(enumerationMedium)
' <xs:enumeration value="Large"/>
Dim enumerationLarge As New XmlSchemaEnumerationFacet()
enumerationLarge.Value = "Large"
restriction.Facets.Add(enumerationLarge)
SizeType.Content = restriction
schema.Items.Add(SizeType)
' <xs:element name="Item">
Dim elementItem As New XmlSchemaElement()
elementItem.Name = "Item"
' <xs:complexType>
Dim complexType As New XmlSchemaComplexType()
' <xs:attribute name="Size" type="SizeType"/>
Dim attributeSize As New XmlSchemaAttribute()
attributeSize.Name = "Size"
attributeSize.SchemaTypeName = New XmlQualifiedName("SizeType", "")
complexType.Attributes.Add(attributeSize)
elementItem.SchemaType = complexType
schema.Items.Add(elementItem)
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 nsmgr As New XmlNamespaceManager(New NameTable())
nsmgr.AddNamespace("xs", "http://www.w3.org/2001/XMLSchema")
compiledSchema.Write(Console.Out, nsmgr)
End Sub
Public Shared Sub ValidationCallbackOne(ByVal sender As Object, ByVal args As ValidationEventArgs)
Console.WriteLine(args.Message)
End Sub
End Class
Följande XML-fil genereras för föregående kodexempel.
<?xml version="1.0" encoding="IBM437"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:simpleType name="SizeType">
<xs:restriction base="xs:string">
<xs:enumeration value="Small" />
<xs:enumeration value="Medium" />
<xs:enumeration value="Large" />
</xs:restriction>
</xs:simpleType>
<xs:element name="Item">
<xs:complexType>
<xs:attribute name="Size" type="SizeType" />
</xs:complexType>
</xs:element>
</xs:schema>
Konstruktorer
| Name | Description |
|---|---|
| XmlSchemaEnumerationFacet() |
Initierar en ny instans av XmlSchemaEnumerationFacet klassen. |
Egenskaper
| Name | Description |
|---|---|
| Annotation |
Hämtar eller anger egenskapen |
| Id |
Hämtar eller anger sträng-ID: t. (Ärvd från XmlSchemaAnnotated) |
| IsFixed |
Hämtar eller anger information som anger att den här aspekten är fast. (Ärvd från XmlSchemaFacet) |
| LineNumber |
Hämtar eller anger radnumret i filen som elementet |
| LinePosition |
Hämtar eller anger radpositionen i filen som elementet |
| Namespaces |
Hämtar eller anger det XmlSerializerNamespaces som ska användas med det här schemaobjektet. (Ärvd från XmlSchemaObject) |
| Parent |
Hämtar eller anger överordnad för den här XmlSchemaObject. (Ärvd från XmlSchemaObject) |
| SourceUri |
Hämtar eller anger källplatsen för filen som läste in schemat. (Ärvd från XmlSchemaObject) |
| UnhandledAttributes |
Hämtar eller anger de kvalificerade attribut som inte tillhör det aktuella schemats målnamnområde. (Ärvd från XmlSchemaAnnotated) |
| Value |
Hämtar eller anger |
Metoder
| Name | Description |
|---|---|
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |