Je dois gratter un fichier xml de http://feeds.feedburner.com/Torrentfreak pour ses liens et sa description.
J'ai utilisé ce code:
var webGet = new HtmlWeb();
var document = webGet.Load("http://feeds.feedburner.com/TechCrunch");
var TechCrunch = from info in document.DocumentNode.SelectNodes("//channel")
from link in info.SelectNodes("//guid[@isPermaLink='false']")
from content in info.SelectNodes("//description")
select new
{
LinkURL = info.InnerText,
Content = content.InnerText,
};
lvLinks.DataSource = TechCrunch;
lvLinks.DataBind();
J'ai utilisé cela dans le contrôle d'affichage de liste pour afficher sur la page asp.net. en utilisant
<%# Eval("LinkURL") %> - <%# Eval("Text") %>
Mais son erreur montrant
La valeur ne peut pas être nulle. Nom du paramètre: source
quel est le problème ? Et est-il possible de gratter (récupérer) des données de nœuds XML en utilisant HtmlAgilityPack? S'il vous plaît suggérer Merci
Essayez d’utiliser la bibliothèque RSS au lieu du HtmlAgilityPack:
Voici quelques liens qui pourraient vous aider:
L'erreur dit que la valeur est null. Donc, il y a aussi peut-être
select new
{
LinkURL = info.InnerText??string.Empty,
Content = content.InnerText??string.Empty,
};
ou dans l'aspx. Je pense que ça devrait être moins dans la chaîne comme ceci:
<%# Eval("LinkURL")??string.Empty %>+"-"+<%# Eval("Text")??string.Empty %>