Je suis débutant en XML et XPath en C#. Voici un exemple de mon XML doc:Mise à jour ou insertion d'un nœud dans un document XML
<root>
<folder1>
...
<folderN>
...
<nodeMustExist>...
<nodeToBeUpdated>some value</nodeToBeUpdated>
....
</root>
Ce que je besoin est de mettre à jour la valeur de nodeToBeUdpated si le nœud existe ou ajouter ce noeud après la nodeMustExist si nodeToBeUpdated est pas là. Le prototype de la fonction est quelque chose comme ceci:
void UpdateNode(
xmlDocument xml,
string nodeMustExist,
string nodeToBeUpdte,
string newVal
)
{
/*
search for XMLNode with name = nodeToBeUpdate in xml
to XmlNodeToBeUpdated (XmlNode type?)
if (xmlNodeToBeUpdated != null)
{
xmlNodeToBeUpdated.value(?) = newVal;
}
else
{
search for nodeMustExist in xml to xmlNodeMustExist obj
if (xmlNodeMustExist != null)
{
add xmlNodeToBeUpdated as next node
xmlNodeToBeUpdte.value = newVal;
}
}
*/
}
Peut-être il y a d'autres façons meilleures et simplifiées de le faire. Aucun conseil? A propos, si nodeToBeUpdated apparaît plus d'une fois à d'autres endroits, je veux juste mettre à jour le premier.
J'ai changé le format de signature de votre méthode pour me débarrasser du défilement horizontal. Je déteste le défilement horizontal. – Welbog