XPathNavigator.ReplaceSelf Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Remplace le nœud actuel par le contenu spécifié.
Surcharges
ReplaceSelf(XmlReader) |
Remplace le nœud actuel par le contenu de l’objet XmlReader spécifié. |
ReplaceSelf(XPathNavigator) |
Remplace le nœud actuel par le contenu de l’objet XPathNavigator spécifié. |
ReplaceSelf(String) |
Remplace le nœud actuel par le contenu de la chaîne spécifiée. |
ReplaceSelf(XmlReader)
- Source:
- XPathNavigator.cs
- Source:
- XPathNavigator.cs
- Source:
- XPathNavigator.cs
Remplace le nœud actuel par le contenu de l’objet XmlReader spécifié.
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)
Paramètres
Exceptions
L'objet XmlReader est dans un état d'erreur ou est fermé.
Le paramètre de l’objet XmlReader est null
.
XPathNavigator n'est pas positionné sur un élément, du texte, une instruction de traitement ou un nœud de commentaire.
Le XPathNavigator ne prend pas en charge la modification.
Le contenu XML du paramètre de l’objet XmlReader n’est pas mis en forme correctement.
Exemples
Dans l’exemple suivant, l’élément price
du contosoBooks.xml
fichier est remplacé par un nouvel pages
élément.
XmlDocument^ document = gcnew 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(gcnew 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);
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)
L'exemple prend le fichier contosoBooks.xml
comme entrée.
<?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>
Remarques
XPathNavigator est positionné sur le nouveau nœud à l’achèvement de la ReplaceSelf méthode et retourne true
. le XPathNavigator n’est pas positionné sur le nouveau nœud après l’achèvement de la méthode lorsque l’entrée ReplaceSelf XML est Empty dans ce cas XPathNavigator , soit sur le nœud frère suivant, soit sur le nœud parent s’il n’y a pas de nœud frère suivant pour le nœud remplacé et que le ReplaceSelf retourne false
.
La ReplaceSelf méthode n’est valide que lorsque le XPathNavigator est positionné sur un élément, du texte, une instruction de traitement ou un nœud de commentaire.
Si la chaîne de données XML n’est pas correctement formée, une exception est levée et le résultat de cette méthode équivaut à appeler DeleteSelf sur le nœud actuel.
Si la chaîne XML contient plusieurs nœuds, tous les nœuds sont ajoutés et le XPathNavigator est positionné sur le premier nœud de la série de nœuds.
La ReplaceSelf méthode n’est pas équivalente à la DeleteSelf méthode .
S’applique à
ReplaceSelf(XPathNavigator)
- Source:
- XPathNavigator.cs
- Source:
- XPathNavigator.cs
- Source:
- XPathNavigator.cs
Remplace le nœud actuel par le contenu de l’objet XPathNavigator spécifié.
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)
Paramètres
- newNode
- XPathNavigator
Objet XPathNavigator positionné sur le nouveau nœud.
Exceptions
Le paramètre de l’objet XPathNavigator est null
.
XPathNavigator n'est pas positionné sur un élément, du texte, une instruction de traitement ou un nœud de commentaire.
Le XPathNavigator ne prend pas en charge la modification.
Le contenu XML du paramètre de l’objet XPathNavigator n’est pas mis en forme correctement.
Exemples
Dans l’exemple suivant, l’élément price
du contosoBooks.xml
fichier est remplacé par un nouvel pages
élément.
XmlDocument^ document = gcnew 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 = gcnew XmlDocument();
childNodes->Load(gcnew 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);
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)
L'exemple prend le fichier contosoBooks.xml
comme entrée.
<?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>
Remarques
XPathNavigator est positionné sur le nouveau nœud à l’achèvement de la ReplaceSelf méthode et retourne true
. le XPathNavigator n’est pas positionné sur le nouveau nœud après l’achèvement de la méthode lorsque l’entrée ReplaceSelf XML est Empty dans ce cas XPathNavigator , soit sur le nœud frère suivant, soit sur le nœud parent s’il n’y a pas de nœud frère suivant pour le nœud remplacé et que le ReplaceSelf retourne false
.
La ReplaceSelf méthode n’est valide que lorsque le XPathNavigator est positionné sur un élément, du texte, une instruction de traitement ou un nœud de commentaire.
Si la chaîne de données XML n’est pas correctement formée, une exception est levée et le résultat de cette méthode équivaut à appeler DeleteSelf sur le nœud actuel.
Si la chaîne XML contient plusieurs nœuds, tous les nœuds sont ajoutés et le XPathNavigator est positionné sur le premier nœud de la série de nœuds.
La ReplaceSelf méthode n’est pas équivalente à la DeleteSelf méthode .
S’applique à
ReplaceSelf(String)
- Source:
- XPathNavigator.cs
- Source:
- XPathNavigator.cs
- Source:
- XPathNavigator.cs
Remplace le nœud actuel par le contenu de la chaîne spécifiée.
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)
Paramètres
- newNode
- String
Chaîne de données XML pour le nouveau nœud.
Exceptions
Le paramètre de chaîne XML est null
.
Le XPathNavigator n’est pas positionné sur un élément, un texte, une instruction de traitement ni un nœud de commentaire.
Le XPathNavigator ne prend pas en charge la modification.
Le paramètre de chaîne XML n’est pas mis en forme correctement.
Exemples
Dans l’exemple suivant, l’élément price
du contosoBooks.xml
fichier est remplacé par un nouvel pages
élément.
XmlDocument^ document = gcnew 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);
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)
L'exemple prend le fichier contosoBooks.xml
comme entrée.
<?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>
Remarques
XPathNavigator est positionné sur le nouveau nœud à l’achèvement de la ReplaceSelf méthode et retourne true
. le XPathNavigator n’est pas positionné sur le nouveau nœud après l’achèvement de la méthode lorsque l’entrée ReplaceSelf XML est Empty dans ce cas XPathNavigator , soit sur le nœud frère suivant, soit sur le nœud parent s’il n’y a pas de nœud frère suivant pour le nœud remplacé et que le ReplaceSelf retourne false
.
La ReplaceSelf méthode n’est valide que lorsque le XPathNavigator est positionné sur un élément, du texte, une instruction de traitement ou un nœud de commentaire.
Si la chaîne de données XML n’est pas correctement formée, une exception est levée et le résultat de cette méthode équivaut à appeler DeleteSelf sur le nœud actuel.
Si la chaîne XML contient plusieurs nœuds, tous les nœuds sont ajoutés et le XPathNavigator est positionné sur le premier nœud de la série de nœuds.
La ReplaceSelf méthode n’est pas équivalente à la DeleteSelf méthode .