Par rapport XPath noeud sélection avec C# XmlDocument

Imaginer le document XML suivant:

<root>
    <person_data>
        <person>
            <name>John</name>
            <age>35</age>
        </person>
        <person>
            <name>Jim</name>
            <age>50</age>
        </person>
    </person_data>
    <locations>
        <location>
            <name>John</name>
            <country>USA</country>
        </location>
        <location>
            <name>Jim</name>
            <country>Japan</country>
        </location>
    </locations>
</root>

Je puis sélectionnez la personne nœud de Jim:

XmlNode personNode = doc.SelectSingleNode("//person[name = 'Jim']");

Et maintenant, à partir de ce nœud avec un seul XPath sélectionnez je tiens à le récupérer Jim emplacement du nœud. Quelque chose comme:

XmlNode locationNode = personNode.SelectSingleNode("//location[name = {reference to personNode}/name]");

Depuis que je suis à la sélection des basé sur le personNode il serait pratique si je pouvais y faire référence dans le sélectionner. Est-ce possible?.. la connexion est là?

Sûr que je pourrais mettre dans un supplément de quelques lignes de code et de mettre le nom dans une variable et l'utilise dans le XPath chaîne mais ce n'est pas ce que je demande.

InformationsquelleAutor | 2009-06-05