XPathNavigator.SetValue(String) Methode

Definitie

Hiermee stelt u de waarde van het huidige knooppunt in.

public:
 virtual void SetValue(System::String ^ value);
public virtual void SetValue(string value);
abstract member SetValue : string -> unit
override this.SetValue : string -> unit
Public Overridable Sub SetValue (value As String)

Parameters

value
String

De nieuwe waarde van het knooppunt.

Uitzonderingen

De waardeparameter is null.

De XPathNavigator positie op het hoofdknooppunt, een naamruimteknooppunt of de opgegeven waarde is ongeldig.

De XPathNavigator bewerking wordt niet ondersteund.

Voorbeelden

In het volgende voorbeeld wordt de SetValue methode gebruikt om alle price elementen in het contosoBooks.xml bestand bij te werken met behulp van het XmlNamespaceManager object om naamruimtevoorvoegsels in de XPath-expressie op te lossen.

XmlDocument document = new XmlDocument();
document.Load("contosoBooks.xml");
XPathNavigator navigator = document.CreateNavigator();

XmlNamespaceManager manager = new XmlNamespaceManager(navigator.NameTable);
manager.AddNamespace("bk", "http://www.contoso.com/books");

foreach (XPathNavigator nav in navigator.Select("//bk:price", manager))
{
    if (nav.Value == "11.99")
    {
        nav.SetValue("12.99");
    }
}

Console.WriteLine(navigator.OuterXml);
Dim document As XmlDocument = New XmlDocument()
document.Load("contosoBooks.xml")
Dim navigator As XPathNavigator = document.CreateNavigator()

Dim manager As XmlNamespaceManager = New XmlNamespaceManager(navigator.NameTable)
manager.AddNamespace("bk", "http://www.contoso.com/books")

For Each nav As XPathNavigator In navigator.Select("//bk:price", manager)
    If nav.Value = "11.99" Then
        nav.SetValue("12.99")
    End If
Next

Console.WriteLine(navigator.OuterXml)

In het voorbeeld wordt het contosoBooks.xml bestand als invoer gebruikt.

<?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>

Opmerkingen

  • Als de XPathNavigator positie op een elementknooppunt wordt weergegeven met complexe inhoud (onderliggende elementen), vervangt het aanroepen van de SetValue methode de onderliggende elementen door een tekstknooppunt met de nieuwe tekenreekswaarde.

  • De SetValue methode kan het hoofdknooppunt of de naamruimteknooppunten niet bijwerken.

Van toepassing op