XPathNavigator.SetTypedValue(Object) Methode

Definition

Legt den typisierten Wert des aktuellen Knotens fest.

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)

Parameter

typedValue
Object

Der neue typisierte Wert des Knotens.

Ausnahmen

Der XPathNavigator unterstützt den Typ des angegebenen Objekts nicht.

Der angegebene Wert darf nicht null sein.

Der XPathNavigator ist nicht auf einem Element- oder Attributknoten positioniert.

Der XPathNavigator unterstützt keine Bearbeitung.

Beispiele

Im folgenden Beispiel wird die SetTypedValue Methode verwendet, um alle price Elemente in der Datei mithilfe des contosoBooks.xml XmlNamespaceManager Objekts zu aktualisieren, um Namespacepräfixe im XPath-Ausdruck aufzulösen.

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

XmlReader^ reader = XmlReader::Create("contosoBooks.xml", settings);
XmlDocument^ document = gcnew 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 = gcnew Decimal(19.99);
navigator->SetTypedValue(price);

navigator->MoveToParent();
Console::WriteLine(navigator->OuterXml);
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)

In diesem Beispiel wird die Datei contosoBooks.xml als Eingabe verwendet.

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

Hinweise

Wenn ein XmlDocument Objekt als Ergebnis eines Schemaüberprüfungsobjekts XmlReader erstellt wird, wird der für die SetTypedValue Methode angegebene Wert anhand des XML-Schemadefinitionsspracheschemas (XSD) für das XML-Dokument überprüft. Wenn der angegebene Wert gemäß dem Schema für das XML-Dokument ungültig ist, wird ein XmlSchemaException Fehler ausgelöst.

Die SetTypedValue Methode ist nur gültig, wenn die XPathNavigator Methode auf einem Element oder Attributknoten positioniert wird.

Gilt für