XPathNavigator.SetTypedValue(Object) Metoda

Definice

Nastaví zadaná hodnota aktuálního uzlu.

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)

Parametry

typedValue
Object

Nová zadaná hodnota uzlu.

Výjimky

Nepodporuje XPathNavigator typ zadaného objektu.

Zadaná hodnota nemůže být null.

Není XPathNavigator umístěn na prvku nebo uzlu atributu.

Nepodporuje XPathNavigator úpravy.

Příklady

V následujícím příkladu SetTypedValue 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.

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)

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

XmlDocument Při vytvoření objektu v důsledku ověřování XmlReader objektu schématu je hodnota zadaná pro SetTypedValue metodu ověřena ve schématu XSD (XML Schema Definition Language) pro dokument XML. Pokud je zadaná hodnota neplatná podle schématu dokumentu XML, vyvolá se chyba XmlSchemaException .

Metoda SetTypedValue je platná pouze v případech, kdy XPathNavigator je umístěn na uzlu elementu nebo atributu.

Platí pro