Compte tenu d'un XElement, comment puis-je récupérer une référence à un autre parent XElement / XAttribute donné un XPath?

StackOverflow https://stackoverflow.com/questions/2857847

  •  27-09-2019
  •  | 
  •  

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.

Était-ce utile?

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
scroll top