Nous avons récemment mis à jour un groupe de DLL dans notre projet, y compris HtmlAgilityPack vers leurs dernières versions. Cela a permis au code suivant qui fonctionnait de commencer à générer des erreurs sur la première ligne.
List<HtmlNode> foundNodes = document.QuerySelectorAll(".divider").ToList();
foreach(HtmlNode node in foundNodes){
doWhatever(node);
}
Méthode non trouvée: 'System.Collections.Generic.IEnumerable`1 HtmlAgilityPack.HtmlNode.Descendants ()'.
La dernière ligne de la trace de la pile est la suivante:
" at Fizzler.Systems.HtmlAgilityPack.HtmlNodeOps.b__71 (HtmlNode n) "
QuerySelectorAll renvoie un IEnumerable de HtmlNode, mais il semble que je ne puisse plus le convertir dans une liste. Je me risquerais à supposer qu'il existe une dll liée avec une version incompatible maintenant (fizzler?) Manquant la méthode Descendants
? Cependant, la page NuGet pour HtmlAgilityPack ne montre aucune dépendance, et la version de fizzler que j'utilise est 1.0.0, ce qui, à mon avis, est correct.
Disclaimer : Je suis le propriétaire du projet Html Agility Pack
La version 1.5.0 a été publiée et ce problème a été résolu dans la v1.5.0-beta5.
Cela est dû au fait qu'un paramètre par défaut a été ajouté à une méthode dans la version 1.4.9.5.
Comme la bibliothèque est fortement nommée, Fizzler n’a plus pu trouver cette méthode.
Il se produit la même erreur avec moi après avoir mis à niveau le package de nuget HtmlAgilityPack.
J'ai résolu pour le moment de rétrograder de 1.4.9.4 à 1.4.9.
Voyons les prochaines versions de ce paquet.