SyndicationFeed仅返回第一个项目

时间:2014-04-19 05:12:54

标签: c# rss rss-reader syndication-feed

我正在努力让SyndicationFeed工作,但我的代码似乎只返回第一个项目(在这种情况下,第一个标题标签)...我看了几个教程,看看我是否在做它错了,甚至完全复制了这些教程中代码的内容,但结果却是相同的 - 显示的是第一个项目。

以下是代码:

XmlReader reader = XmlReader.Create("http://www.goal.com/en-us/feeds/news?fmt=rss&ICID=OP");
SyndicationFeed feed = SyndicationFeed.Load(reader);

foreach(SyndicationItem item in feed.Items) {
    Console.WriteLine(feed.Title.Text);
}
Console.WriteLine("Enter to quit");
Console.ReadLine();

返回类似于:

的内容
Goal.com News - English - America
Goal.com News - English - America
Goal.com News - English - America
Goal.com News - English - America
...
Enter to quit

我也尝试了多个rss feed,但得到了相同的结果。有谁知道发生了什么事?

1 个答案:

答案 0 :(得分:0)

这是一个微不足道的错误。您输出的是Feed的标题而不是单个项目:

foreach(SyndicationItem item in feed.Items) {
    Console.WriteLine(feed.Title.Text);
}

相反,请尝试

foreach(SyndicationItem item in feed.Items) {
    Console.WriteLine(item.Title.Text);
}