<Document>
<A>
<B>
<C></C>
</B>
</A>
<E>
<F>
<C></C>
</F>
<G>
<C></C>
</G>
</E>
</Document>
se carico il codice XML sopra in un XmlDocument e fare un SelectSingleNode su A utilizzando la query XPath // CSelectNodes XPath in .NET
XmlNode oNode = oDocument.SelectSingleNode("E"); XmlNodeList oNodeList = oNode.SelectNodes("//C");
perché lo fa tornare i nodi da Under B quando ciò che Mi aspetto che succeda che restituisca solo i nodi da E
Ha senso?
Modifica: come faccio a tornare solo da quel nodo in poi?
No, la specifica dice "//" è "della radice del documento", e ".//" è del nodo di contesto. L'implementazione è corretta. –
Rif. Ref. W3: leggere attentamente: "nel documento dal nodo corrente" - il nodo contesto viene utilizzato (solo) per ottenere il documento; quindi l'intero documento viene scansionato. –
Sì, l'ho aggiornato per fare riferimento allo standard XPath ed evidenziare dove si trova la confusione. Grazie. :) –