Dans un document XML, comme les suivantes:Comment trouver des noeuds entièrement entre deux noeuds spécifiés
<root>
<fish value="Start"/>
<pointlessContainer>
<anotherNode value="Pick me!"/>
<anotherNode value="Pick me too!"/>
<fish value="End"/>
</pointlessContainer>
</root>
Comment puis-je utiliser la merveille de LINQ to XML pour trouver tous les nœuds complètement contenu par les fish
noeuds ? Notez que dans cet exemple, j'ai délibérément placé les nœuds fish
à différents niveaux dans le document, car je prévois que ce scénario se produira dans la nature.
Évidemment, dans cet exemple, je chercherais à obtenir les deux nœuds anotherNode
, mais pas le nœud pointlessContainer
. NB: les deux noeuds de «délimitation» peuvent avoir le même type (par exemple fish
) que les autres noeuds non délimiteurs du document, mais ils ont des attributs uniques et sont donc faciles à identifier.
Est-ce qu'il peut y avoir des nœuds sélectionnés qui sont * plus élevés * dans l'arbre que le nœud "start"? –
Oh, vous voulez dire si les nœuds de début et de fin sont sur des branches différentes? Je n'avais pas pensé à ça. Je suppose que techniquement c'est possible. tbh Je ne sais pas assez sur cette saveur de XML (WordML) pour être sûr. – David
Je considère que c'est très improbable, même si rien ne me surprendrait sur les formats MS Office. – David