J'ai besoin d'une expression LINQ pour trouver un XElement où le nom de l'élément et les attributs correspondent à un nœud d'entrée

J'ai besoin de remplacer le contenu d'un nœud dans un XElement hiérarchie lorsque le nom de l'élément et tous les noms d'attributs et les valeurs correspondent à un élément de saisie. (Si aucune correspondance n'est trouvée, le nouvel élément peut être ajouté.)

Par exemple, si mes données ressemble à ceci:

<root>
  <thing1 a1="a" a2="b">one</thing1>
  <thing2 a1="a" a2="a">two</thing2>
  <thing2 a1="a" a3="b">three</thing2>
  <thing2 a1="a">four</thing2>
  <thing2 a1="a" a2="b">five</thing2>
<root>

Je veux trouver le dernier élément lorsque j'appelle une méthode de ce type d'entrée:

<thing2 a1="a" a2="b">new value</thing2>

La méthode ne devrait avoir aucun codée en dur de l'élément ou de l'attribut noms, mais il correspond à l'entrée de données.

OriginalL'auteur Wonko | 2008-10-01