Compte tenu d'un XElement, comment puis-je récupérer une référence à un autre parent XElement / XAttribute donné un XPath?
Question
Vu le code XML suivant:
<SomeXML>
<Element1>
<Element2 Attribute3="Value4" />
</Element1
</SomeXML>
... et une référence XElement à 'SomeElement' et un XPath 'Element1 / Element2 / @ Attribute3'
Comment puis-je récupérer une référence à Attribute3 afin que je puisse modifier la valeur de (à l'aide du XPath)?
Le XPath est d'être un paramètre récupéré et est donc ma seule façon de localiser le nœud en question.
La solution
Ajouter using System.Xml.XPath
au fichier de code où vous devez le faire.
Ensuite, vous pouvez utiliser le code comme ceci: -
var attrib3 = someElement.XPathEvaluate("Element1/Element2/@Attribute3") as XAttribute;
if (attrib3 != null)
attrib3.Value = "new value";
Autres conseils
à l'aide System.Xml.XPath
et la méthode d'extension XPathSelectElement sur votre XElement
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow