Класс XPathNodelterator

исходно он позиционируется непосредственно перед

Класс XPathNodelterator Следует модели других итераторов в. NET Framework. Исходно он позиционируется непосредственно перед элементом коллекции, которую он содержит. Вы последовательно вызываете метод MoveNext, Обычно в цикле While, И проверяете возвращаемое булево значение. Если оно равно True, То был еще один узел, куда можно было перейти, и итератор будет позиционирован на этом узле. Если возвращается False, То больше нет узлов, которые можно итерировать. Следующий код демонстрирует процесс загрузки документа, выполнения запроса и итерации по результатам. Свойство Current Итератора возвращает ссылку на XPathNavigator, Позиционированный на текущем узле, который вы можете затем использовать для доступа к содержимому узла, либо для выполнения навигации или дальнейших запросов, относящихся к этому узлу. Этот пример обращается к свойству Value Текущего узла, которое в случае элемента или атрибута является просто его текстовым содержанием. Имеется также свойство Name, Которое возвращает имя узла. Сложность возвращаемых результатов зависит от сложности запроса, который вы выдаете. Для чего-то простого вроде показанного запроса, который просто возвращает набор элементов, содержащих текстовые узлы со значениями, которые вас интересуют, код довольно прямолинеен. Однако результаты XPath-запросов могли бы возвращать любой тип узла, поэтому вам часто требуется некоторая условная логика, которая проверяет тип каждого узла по мере их итерации и модифицирует свои действия в зависимости от типа узла. Тип узла экспонируется свойством NodeType Объекта XPathNavigator, Которое возвращает перечисление типа XPathNodeType.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *