Rechercher dans le fichier XML des nœuds avec une valeur d’atsortingbut spécifique dans .NET 2

J’ai trouvé des réponses à la recherche de nœuds XML avec LINQ, mais je suis limité à C # avec .NET 2.

Je souhaite ouvrir un seul fichier XML (~ 50 Ko, tout le texte simple) et rechercher tous les nœuds avec un name atsortingbut ayant une valeur spécifique.

Il semble que XmlDocument.SelectNodes() pourrait être ce que je recherche, mais je ne connais pas XPath. Est-ce la bonne façon et si oui, à quoi ressemblerait le code?

Vous pouvez utiliser XPath dans XmlDocument.SelectNodes tels que: SelectNodes("//ElementName[@AtsortingbuteName='AtsortingbuteValue']")

Échantillon Xml:

      

Échantillon C #:

 XmlDocument xDoc = new XmlDocument(); // Load Xml XmlNodeList nodes = xDoc.SelectNodes("//element[@name='value1']"); // nodes.Count == 2 

Ici vous pouvez trouver quelques exemples supplémentaires XPath

pense que tu pourrais faire quelque chose comme ça (bien, rustique, mais tu as l’idée), en utilisant GetElementsByTagName

 var myDocument = new XmlDocument(); myDocument.Load(); var nodes = myDocument.GetElementsByTagName("Tool"); var resultNodes = new List(); foreach (XmlNode node in nodes) { if (node.Atsortingbutes != null && node.Atsortingbutes["name"] != null && node.Atsortingbutes["name"].Value == "asdf") resultNodes.Add(node); }