XPathNavigator.ReplaceSelf Metod

Definition

Ersätter den aktuella noden med det angivna innehållet.

Överlagringar

Name Description
ReplaceSelf(XmlReader)

Ersätter den aktuella noden med innehållet i det XmlReader angivna objektet.

ReplaceSelf(XPathNavigator)

Ersätter den aktuella noden med innehållet i det XPathNavigator angivna objektet.

ReplaceSelf(String)

Ersätter den aktuella noden med innehållet i den angivna strängen.

ReplaceSelf(XmlReader)

Källa:
XPathNavigator.cs
Källa:
XPathNavigator.cs
Källa:
XPathNavigator.cs
Källa:
XPathNavigator.cs
Källa:
XPathNavigator.cs

Ersätter den aktuella noden med innehållet i det XmlReader angivna objektet.

public:
 virtual void ReplaceSelf(System::Xml::XmlReader ^ newNode);
public virtual void ReplaceSelf(System.Xml.XmlReader newNode);
abstract member ReplaceSelf : System.Xml.XmlReader -> unit
override this.ReplaceSelf : System.Xml.XmlReader -> unit
Public Overridable Sub ReplaceSelf (newNode As XmlReader)

Parametrar

newNode
XmlReader

Ett XmlReader objekt som är placerat på XML-data för den nya noden.

Undantag

Objektet XmlReader är i feltillstånd eller stängt.

Objektparametern XmlReader är null.

XPathNavigator är inte placerad på ett element, en text, en bearbetningsinstruktion eller en kommentarsnod.

Stöder XPathNavigator inte redigering.

XML-innehållet i XmlReader objektparametern är inte välformat.

Exempel

I följande exempel ersätts elementet pricecontosoBooks.xml i filen med ett nytt pages element.

XmlDocument document = new XmlDocument();
document.Load("contosoBooks.xml");
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");

XmlReader pages = XmlReader.Create(new StringReader("<pages xmlns=\"http://www.contoso.com/books\">100</pages>"));

navigator.ReplaceSelf(pages);

Console.WriteLine("Position after delete: {0}", navigator.Name);
Console.WriteLine(navigator.OuterXml);
Dim document As XmlDocument = New XmlDocument()
document.Load("contosoBooks.xml")
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 pages As XmlReader = XmlReader.Create(New StringReader("<pages xmlns='http://www.contoso.com/books'>100</pages>"))

navigator.ReplaceSelf(pages)

Console.WriteLine("Position after delete: {0}", navigator.Name)
Console.WriteLine(navigator.OuterXml)

Exemplet tar contosoBooks.xml filen som indata.

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

Kommentarer

XPathNavigator är placerad på den nya noden när metoden har slutförts ReplaceSelf och returnerar true. XPathNavigator är inte placerad på den nya noden efter att metoden har slutförts ReplaceSelf när XML-indata är Empty i vilket fall XPathNavigator antingen placeras på nästa syskonnod eller den överordnade noden om det inte finns någon nästa syskonnod till den ersatta noden och ReplaceSelf returnerar false.

  • Metoden ReplaceSelf är endast giltig när XPathNavigator är placerad på ett element, text, bearbetningsinstruktion eller kommentarsnod.

  • Om XML-datasträngen inte är väl utformad än ett undantag genereras och resultatet av den här metoden motsvarar anrop DeleteSelf på den aktuella noden.

  • Om XML-strängen innehåller flera noder läggs alla noder till och XPathNavigator placeras på den första noden i nodserien.

  • Metoden ReplaceSelf motsvarar DeleteSelf inte metoden.

Gäller för

ReplaceSelf(XPathNavigator)

Källa:
XPathNavigator.cs
Källa:
XPathNavigator.cs
Källa:
XPathNavigator.cs
Källa:
XPathNavigator.cs
Källa:
XPathNavigator.cs

Ersätter den aktuella noden med innehållet i det XPathNavigator angivna objektet.

public:
 virtual void ReplaceSelf(System::Xml::XPath::XPathNavigator ^ newNode);
public virtual void ReplaceSelf(System.Xml.XPath.XPathNavigator newNode);
abstract member ReplaceSelf : System.Xml.XPath.XPathNavigator -> unit
override this.ReplaceSelf : System.Xml.XPath.XPathNavigator -> unit
Public Overridable Sub ReplaceSelf (newNode As XPathNavigator)

Parametrar

newNode
XPathNavigator

Ett XPathNavigator objekt placerat på den nya noden.

Undantag

Objektparametern XPathNavigator är null.

XPathNavigator är inte placerad på ett element, en text, en bearbetningsinstruktion eller en kommentarsnod.

Stöder XPathNavigator inte redigering.

XML-innehållet i XPathNavigator objektparametern är inte välformat.

Exempel

I följande exempel ersätts elementet pricecontosoBooks.xml i filen med ett nytt pages element.

XmlDocument document = new XmlDocument();
document.Load("contosoBooks.xml");
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");

XmlDocument childNodes = new XmlDocument();
childNodes.Load(new StringReader("<pages xmlns=\"http://www.contoso.com/books\">100</pages>"));
XPathNavigator childNodesNavigator = childNodes.CreateNavigator();

navigator.ReplaceSelf(childNodesNavigator);

Console.WriteLine("Position after delete: {0}", navigator.Name);
Console.WriteLine(navigator.OuterXml);
Dim document As XmlDocument = New XmlDocument()
document.Load("contosoBooks.xml")
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 childNodes As XmlDocument = New XmlDocument()
childNodes.Load(New StringReader("<pages xmlns='http://www.contoso.com/books'>100</pages>"))
Dim childNodesNavigator As XPathNavigator = childNodes.CreateNavigator()

navigator.ReplaceSelf(childNodesNavigator)

Console.WriteLine("Position after delete: {0}", navigator.Name)
Console.WriteLine(navigator.OuterXml)

Exemplet tar contosoBooks.xml filen som indata.

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

Kommentarer

XPathNavigator är placerad på den nya noden när metoden har slutförts ReplaceSelf och returnerar true. XPathNavigator är inte placerad på den nya noden efter att metoden har slutförts ReplaceSelf när XML-indata är Empty i vilket fall XPathNavigator antingen placeras på nästa syskonnod eller den överordnade noden om det inte finns någon nästa syskonnod till den ersatta noden och ReplaceSelf returnerar false.

  • Metoden ReplaceSelf är endast giltig när XPathNavigator är placerad på ett element, text, bearbetningsinstruktion eller kommentarsnod.

  • Om XML-datasträngen inte är väl utformad än ett undantag genereras och resultatet av den här metoden motsvarar anrop DeleteSelf på den aktuella noden.

  • Om XML-strängen innehåller flera noder läggs alla noder till och XPathNavigator placeras på den första noden i nodserien.

  • Metoden ReplaceSelf motsvarar DeleteSelf inte metoden.

Gäller för

ReplaceSelf(String)

Källa:
XPathNavigator.cs
Källa:
XPathNavigator.cs
Källa:
XPathNavigator.cs
Källa:
XPathNavigator.cs
Källa:
XPathNavigator.cs

Ersätter den aktuella noden med innehållet i den angivna strängen.

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

Parametrar

newNode
String

XML-datasträngen för den nya noden.

Undantag

XML-strängparametern är null.

XPathNavigator är inte placerad på ett element, en text, en bearbetningsinstruktion eller en kommentarsnod.

Stöder XPathNavigator inte redigering.

XML-strängparametern är inte välformulerad.

Exempel

I följande exempel ersätts elementet pricecontosoBooks.xml i filen med ett nytt pages element.

XmlDocument document = new XmlDocument();
document.Load("contosoBooks.xml");
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");

navigator.ReplaceSelf("<pages>100</pages>");

Console.WriteLine("Position after delete: {0}", navigator.Name);
Console.WriteLine(navigator.OuterXml);
Dim document As XmlDocument = New XmlDocument()
document.Load("contosoBooks.xml")
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")

navigator.ReplaceSelf("<pages>100</pages>")

Console.WriteLine("Position after delete: {0}", navigator.Name)
Console.WriteLine(navigator.OuterXml)

Exemplet tar contosoBooks.xml filen som indata.

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

Kommentarer

XPathNavigator är placerad på den nya noden när metoden har slutförts ReplaceSelf och returnerar true. XPathNavigator är inte placerad på den nya noden efter att metoden har slutförts ReplaceSelf när XML-indata är Empty i vilket fall XPathNavigator antingen placeras på nästa syskonnod eller den överordnade noden om det inte finns någon nästa syskonnod till den ersatta noden och ReplaceSelf returnerar false.

  • Metoden ReplaceSelf är endast giltig när XPathNavigator är placerad på ett element, text, bearbetningsinstruktion eller kommentarsnod.

  • Om XML-datasträngen inte är väl utformad än ett undantag genereras och resultatet av den här metoden motsvarar anrop DeleteSelf på den aktuella noden.

  • Om XML-strängen innehåller flera noder läggs alla noder till och XPathNavigator placeras på den första noden i nodserien.

  • Metoden ReplaceSelf motsvarar DeleteSelf inte metoden.

Gäller för