XmlSchemaDatatype.ParseValue Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Aşırı Yüklemeler
| Name | Description |
|---|---|
| ParseValue(String, XmlNameTable, IXmlNamespaceResolver) |
Türetilmiş bir sınıfta geçersiz kılındığında, belirtileni yerleşik veya kullanıcı tanımlı basit bir türe göre doğrular |
| ParseValue(String, XmlNameTable, XmlNamespaceManager) |
Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen dizeyi yerleşik veya kullanıcı tanımlı basit bir türe göre doğrular. |
ParseValue(String, XmlNameTable, IXmlNamespaceResolver)
- Kaynak:
- XmlSchemaDataType.cs
- Kaynak:
- XmlSchemaDataType.cs
- Kaynak:
- XmlSchemaDataType.cs
- Kaynak:
- XmlSchemaDataType.cs
- Kaynak:
- XmlSchemaDataType.cs
Türetilmiş bir sınıfta geçersiz kılındığında, belirtileni yerleşik veya kullanıcı tanımlı basit bir türe göre doğrular string .
public:
abstract System::Object ^ ParseValue(System::String ^ s, System::Xml::XmlNameTable ^ nameTable, System::Xml::IXmlNamespaceResolver ^ nsmgr);
public abstract object ParseValue(string s, System.Xml.XmlNameTable? nameTable, System.Xml.IXmlNamespaceResolver? nsmgr);
public abstract object ParseValue(string s, System.Xml.XmlNameTable nameTable, System.Xml.IXmlNamespaceResolver nsmgr);
abstract member ParseValue : string * System.Xml.XmlNameTable * System.Xml.IXmlNamespaceResolver -> obj
Public MustOverride Function ParseValue (s As String, nameTable As XmlNameTable, nsmgr As IXmlNamespaceResolver) As Object
Parametreler
- s
- String
string basit türe göre doğrulamak için.
- nameTable
- XmlNameTable
XmlNameTable bu XmlSchemaDatatype nesne xs:NCName türünü temsil ederse, ayrıştırırken string atomizasyon için kullanılacak.
- nsmgr
- IXmlNamespaceResolver
Bu IXmlNamespaceResolverXmlSchemaDatatype nesne xs:QName türünü temsil ederse ayrıştırırken string kullanılacak nesne.
Döndürülenler
Object Özelliği tarafından ValueType döndürülen türe güvenli bir şekilde aktarılabilir.
Özel durumlar
Giriş değeri bu W3C XML Şema türünün geçerli bir örneği değil.
Ayrıştırılacak değer olamaz null.
Örnekler
Aşağıdaki örnek, example.xsd dosyasından basit türü olarak alır LotteryNumber ve yöntemini kullanarak ParseValue değerini 5 doğrularstring.XmlSchemaSimpleType
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
Yukarıdaki kod örneği için aşağıdaki XML dosyası kullanılır.
<?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>
Açıklamalar
yöntemi, ParseValue yerleşik veya kullanıcı tanımlı basit bir türe göre belirtileni doğrular string . Örneğin, bu XmlSchemaDatatype xs:date türünü temsil ederse bir örneği DateTime döndürülür.
Aşağıda, yöntemin ParseValue doğrulama işlemi sırasında gerçekleştirilen adımlar yer alır.
Olarak
stringbelirtilen değeri ilgili Ortak Dil Çalışma Zamanı (CLR) türüne dönüştürün.Değerin basit tür için tanımlanan modelleri ihlal etmediğinden emin olun.
Dönüştürülen değer daha sonra bir olarak döndürülür ve özelliği tarafından ValueType döndürülen türe güvenli bir Object şekilde yayınlanabilir.
XmlSchemaDatatype Nesne bir liste türünü temsil ettiğinde, giriş string değeri bir veya daha fazla nesnenin listesine dönüştürülür.
XmlSchemaDatatype Nesne bir liste türünü temsil ettiğinde, birleşim üye türü olarak giriş değerini ayrıştırmaya çalışılır. Ayrıştırma girişimi başarısız olursa, ayrıştırma başarılı olana veya ayrıştırmak için başka üye türü olmayana kadar birleşimin bir sonraki üyesiyle dönüştürme denenir. Ayrıştırma başarısız olursa, bir özel durum oluşturulur.
Şunlara uygulanır
ParseValue(String, XmlNameTable, XmlNamespaceManager)
Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen dizeyi yerleşik veya kullanıcı tanımlı basit bir türe göre doğrular.
public:
abstract System::Object ^ ParseValue(System::String ^ s, System::Xml::XmlNameTable ^ nameTable, System::Xml::XmlNamespaceManager ^ nsmgr);
public abstract object ParseValue(string s, System.Xml.XmlNameTable nameTable, System.Xml.XmlNamespaceManager nsmgr);
abstract member ParseValue : string * System.Xml.XmlNameTable * System.Xml.XmlNamespaceManager -> obj
Public MustOverride Function ParseValue (s As String, nameTable As XmlNameTable, nsmgr As XmlNamespaceManager) As Object
Parametreler
- s
- String
Basit türe göre doğrulanması gereken dize.
- nameTable
- XmlNameTable
XmlNameTable Bu XmlSchemaDatatype nesne xs:NCName türünü temsil ederse, dize ayrıştırırken atomizasyon için kullanılacak.
- nsmgr
- XmlNamespaceManager
Bu XmlNamespaceManager nesne xs:QName türünü temsil ederse XmlSchemaDatatype dize ayrıştırırken kullanılacak nesne.
Döndürülenler
Object Özelliği tarafından ValueType döndürülen türe güvenli bir şekilde yayınlanabilir.
Özel durumlar
Giriş değeri bu W3C XML Şema türünün geçerli bir örneği değil.
Ayrıştırılacak değer null olamaz (Visual Basic'te hiçbir şey).
Açıklamalar
yöntemi, ParseValue belirtilen dizeyi yerleşik veya kullanıcı tanımlı basit bir türe göre doğrular. Örneğin, bu XmlSchemaDatatype xs:date türünü temsil ederse bir örneği DateTime döndürülür.
Aşağıda, yöntemin ParseValue doğrulama işlemi sırasında gerçekleştirilen adımlar yer alır.
Belirtilen dizeyi ilgili Ortak Dil Çalışma Zamanı (CLR) türüne dönüştürün.
Değerin basit tür için tanımlanan modelleri ihlal etmediğinden emin olun.
Dönüştürülen değer daha sonra bir olarak döndürülür ve özelliği tarafından ValueType döndürülen türe güvenli bir Object şekilde dönüştürülebilir.
XmlSchemaDatatype Nesne bir liste türünü temsil ettiğinde, giriş dizesi değeri bir veya daha fazla nesnenin listesine dönüştürülür. XmlSchemaDatatype Nesne bir liste türünü temsil ettiğinde, birleşim üye türü olarak giriş değerini ayrıştırmaya çalışılır. Ayrıştırma girişimi başarısız olursa, ayrıştırma başarılı olana veya ayrıştırmak için başka üye türü olmayana kadar birleşimin bir sonraki üyesiyle dönüştürme denenir. Ayrıştırma başarısız olursa, bir özel durum oluşturulur.