@Gordon - "/ E // C" справится с любым количеством уровней между E и C.
<Document>
<A>
<B>
<C></C>
</B>
</A>
<E>
<F>
<C></C>
</F>
<G>
<C></C>
</G>
</E>
</Document>
я загружаю вышеупомянутый XML в XmlDocument и делаю SelectSingleNode на A, используя запрос XPath // C
XmlNode oNode = oDocument.SelectSingleNode("E"); XmlNodeList oNodeList = oNode.SelectNodes("//C");
почему он возвращает узлы из-под B, когда то, что я ожидал бы получить, будет возвращать только узлы из-под E
Есть смысл?
Редактировать: Как я могу сделать так, чтобы он только возвращался с этого узла?