Я не уверен, почему это не работает.
У меня есть XmlNode в известном формате. Это:
<[setting-name]>
<dictionary>
<[block-of-xml-to-process]/>
<[block-of-xml-to-process]/>
<[block-of-xml-to-process]/>
</dictionary>
</[setting-name]>
У меня есть ссылка на узел в переменной под названием шаблон. Мне нужна итеративная коллекция узлов, каждый из которых представлен вышеупомянутым [block-of-xml-to-process]. Название и структура блоков на данный момент неизвестны. [Название-настройки] известно.
Это кажется довольно простым. Я могу придумать полдюжины выражений XPATH, которые должны указывать на блоки. Я пробовал:
XmlNodeList kvpsList = pattern.SelectNodes(String.Format(@"/{0}/dictionary/*", _CollectionName));
XmlNodeList kvpsList = pattern.SelectNodes(String.Format(@"{0}/dictionary/*", _CollectionName));
XmlNodeList kvpsList = pattern.SelectNodes(@"//dictionary/*");
XmlNodeList kvpsList = pattern.SelectNodes(@"//dictionary");
Но мне явно не хватает базового понимания XPATH или некоторых специальных приемов .SelectNodes, потому что ни один из них не работает последовательно.
Что я делаю неправильно?