XPathNavigator.SetTypedValue(Object) Yöntem

Tanım

Geçerli düğümün yazılan değerini ayarlar.

public:
 virtual void SetTypedValue(System::Object ^ typedValue);
public virtual void SetTypedValue(object typedValue);
abstract member SetTypedValue : obj -> unit
override this.SetTypedValue : obj -> unit
Public Overridable Sub SetTypedValue (typedValue As Object)

Parametreler

typedValue
Object

Düğümün yeni yazılan değeri.

Özel durumlar

, XPathNavigator belirtilen nesnenin türünü desteklemez.

Belirtilen değer olamaz null.

XPathNavigator bir öğe veya öznitelik düğümünde konumlandırılmaz.

XPathNavigator düzenlemeyi desteklemiyor.

Örnekler

Aşağıdaki örnekte yöntemi, SetTypedValue XPath ifadesindeki price ad alanı ön eklerini çözümlemek için nesnesini kullanarak contosoBooks.xml dosyadaki tüm XmlNamespaceManager öğeleri güncelleştirmek için kullanılır.

XmlReaderSettings settings = new XmlReaderSettings();
settings.Schemas.Add("http://www.contoso.com/books", "contosoBooks.xsd");
settings.ValidationType = ValidationType.Schema;

XmlReader reader = XmlReader.Create("contosoBooks.xml", settings);
XmlDocument document = new XmlDocument();
document.Load(reader);

XPathNavigator navigator = document.CreateNavigator();

navigator.MoveToChild("bookstore", "http://www.contoso.com/books");
navigator.MoveToChild("book", "http://www.contoso.com/books");
navigator.MoveToChild("price", "http://www.contoso.com/books");

Decimal price = 19.99M;
navigator.SetTypedValue(price);

navigator.MoveToParent();
Console.WriteLine(navigator.OuterXml);
Dim settings As XmlReaderSettings = New XmlReaderSettings()
settings.Schemas.Add("http://www.contoso.com/books", "contosoBooks.xsd")
settings.ValidationType = ValidationType.Schema

Dim reader As XmlReader = XmlReader.Create("contosoBooks.xml", settings)
Dim document As XmlDocument = New XmlDocument()
document.Load(reader)

Dim navigator As XPathNavigator = document.CreateNavigator()

navigator.MoveToChild("bookstore", "http://www.contoso.com/books")
navigator.MoveToChild("book", "http://www.contoso.com/books")
navigator.MoveToChild("price", "http://www.contoso.com/books")

Dim price As New Decimal(19.99)
navigator.SetTypedValue(price)

navigator.MoveToParent()
Console.WriteLine(navigator.OuterXml)

Örnek, contosoBooks.xml dosyasını giriş olarak alır.

<?xml version="1.0" encoding="utf-8" ?>
<bookstore xmlns="http://www.contoso.com/books">
    <book genre="autobiography" publicationdate="1981-03-22" ISBN="1-861003-11-0">
        <title>The Autobiography of Benjamin Franklin</title>
        <author>
            <first-name>Benjamin</first-name>
            <last-name>Franklin</last-name>
        </author>
        <price>8.99</price>
    </book>
    <book genre="novel" publicationdate="1967-11-17" ISBN="0-201-63361-2">
        <title>The Confidence Man</title>
        <author>
            <first-name>Herman</first-name>
            <last-name>Melville</last-name>
        </author>
        <price>11.99</price>
    </book>
    <book genre="philosophy" publicationdate="1991-02-15" ISBN="1-861001-57-6">
        <title>The Gorgias</title>
        <author>
            <name>Plato</name>
        </author>
        <price>9.99</price>
    </book>
</bookstore>

Açıklamalar

Şema doğrulama XmlDocument nesnesinin sonucu olarak bir XmlReader nesne oluşturulduğunda, yöntemine SetTypedValue belirtilen değer XML belgesinin XML Şema Tanım Dili (XSD) şemasına göre doğrulanır. Belirtilen değer XML belgesinin şemasına göre geçersizse, bir XmlSchemaException oluşturulur.

SetTypedValue yöntemi yalnızca öğesi veya öznitelik düğümünde konumlandırıldığında XPathNavigator geçerlidir.

Şunlara uygulanır