HTMLAgilityPack QuerySelectorAll lancer une exception, potentiellement incompatibles version Fizzler dll?

c# fizzler html-agility-pack

Question

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.

Réponse d'expert

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.


Réponse populaire

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.



Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi