XPathNavigator.SetValue(String) Metoda

Definice

Nastaví hodnotu aktuálního uzlu.

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)

Parametry

value
String

Nová hodnota uzlu.

Výjimky

Parametr value je null.

Umístí se XPathNavigator na kořenový uzel, uzel oboru názvů nebo zadaná hodnota je neplatná.

Nepodporuje XPathNavigator úpravy.

Příklady

V následujícím příkladu SetValue se metoda používá k aktualizaci všech price prvků v contosoBooks.xml souboru pomocí objektu XmlNamespaceManager k překladu předpon oboru názvů ve výrazu XPath.

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)

Příklad vezme contosoBooks.xml soubor jako vstup.

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

Poznámky

  • Pokud je umístěn na uzlu elementu XPathNavigator se složitým obsahem (podřízené prvky), volání SetValue metody nahradí podřízené prvky textovým uzlem obsahujícím novou řetězcovou hodnotu.

  • Metoda SetValue nemůže aktualizovat kořenový uzel nebo uzly oboru názvů.

Platí pro