我需要从http://feeds.feedburner.com/Torrentfreak抓取一个xml文件,以获取其链接和说明。
我使用了这段代码:
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();
我在列表视图控件中使用它来在asp.net页面上显示。 使用
<%# Eval("LinkURL") %> - <%# Eval("Text") %>
但显示错误
值不能为空。 参数名称:source
有什么问题?是否可以使用HtmlAgilityPack来刮取(获取)xml节点数据? 请建议 感谢
答案 0 :(得分:0)
错误表示该值为null。所以也有可能的
select new
{
LinkURL = info.InnerText??string.Empty,
Content = content.InnerText??string.Empty,
};
或在aspx中。我认为它应该是字符串中的负数:
<%# Eval("LinkURL")??string.Empty %>+"-"+<%# Eval("Text")??string.Empty %>
答案 1 :(得分:0)
尝试使用RSS库而不是HtmlAgilityPack:
以下是一些可能对您有帮助的链接: