Определите, существует ли узел в HTMLAgiltyPack

html-agility-pack windows-8.1 windows-phone-8.1

Вопрос

Я хочу запустить цикл foreach в HtmlNode который был проанализирован из Интернета через класс HtmlWeb и метод loadFromWebAsync . Перед запуском цикла я хочу убедиться, что узел существует в HtmlDocument . Как проверить это без помощи запроса Xpath потому что многие версии Windows RT и Windows 8.1 не работают с этим.

Популярные ответы

Вы можете использовать метод LINQ .Any() чтобы проверить, содержит ли последовательность какой-либо элемент, например:

var doc = new HtmlDocument();
.....
var isDivExist = doc.DocumentNode
                    .Descendants("div")
                    .Any();

Или проверить, удовлетворяет ли какой-либо узел в последовательности конкретному условию:

var isDivWithSpecificClassExist = doc.DocumentNode
                                     .Descendants("div")
                                     .Any(d => .GetAttributeValue("class", "") == "foo");


Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему
Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему