j'ai Xml qui ressemble à ceci:éléments de mise à jour dans Nested Xml
<DataMapper xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SqlTable />
<Level_01s>
<DataParameter>
<SqlTable>MY-Table-Name</SqlTable>
<Children>
<DataParameter>
<SqlTable>MY-Table-Name</SqlTable>
<Children>
<DataParameter>
<SqlTable>MY-Table-Name</SqlTable>
<Children>
<DataParameter>
<SqlTable>[All]</SqlTable>
<Children />
</DataParameter>
<DataParameter>
<SqlTable>MY-Table-Name</SqlTable>
<Children>
<DataParameter>
<SqlTable>[All]</SqlTable>
<Children />
</DataParameter>
</Children>
</DataParameter>
</Children>
</DataParameter>
</Children>
</DataParameter>
</Children>
</DataParameter>
</Level_01s>
</ DataMapper>
Ce que je voudrais faire est mise à jour toutes les instances de l'élément. Le problème que j'ai, c'est que les DataParameters peuvent aller profond de n niveaux.
Comment puis-je m'assurer de façon récurrente de mettre à jour tout cela?
J'utilise ce code pour mettre à jour des éléments de niveau racine.
XDocument xdoc = XDocument.Parse(myxmlstring);
var element = xdoc.Elements("SqlTable").Single();
element.Value = "foo";
xdoc.Save("file.xml");
via Best way to change the value of an element in C#
J'ai mis à jour ma réponse pour montrer comment vous pouvez fournir un prédicat dans l'instruction. –