SyndicationFeed.item.Content在wordpress feed中为Null

时间:2013-03-19 10:12:46

标签: c# wordpress xml-parsing

我正在尝试将wordpress博客中的帖子添加到我的网站,我正在尝试使用以下代码将SyndicationFeed类与XmlReader一起使用

        var reader = XmlReader.Create("http://nycphotographer.wordpress.com/feed/");
        var feed = SyndicationFeed.Load<SyndicationFeed>(reader);

        lblBlogPost.Text = "Latest posts from " + feed.Title.Text + Environment.NewLine;
        foreach (var item in feed.Items)
        {
            lblBlogPost.Text += item.Title.Text + Environment.NewLine;
            lblBlogPost.Text += item.Content + Environment.NewLine;
        }

然后当我尝试阅读Feed项目的内容(CDATA编码)时,我在内容部分得到null。

然后我尝试关注SyndicationItem.Content is Null,但问题是这篇SO帖子中提供的答案给了我一个错误

'System.Collections.ObjectModel.Collection<string>' to 'string'

请某人指出我正确的方向。

**编辑:** @Sapster指出完整的错误陈述如下

Cannot implicitly convert type 'System.Collections.ObjectModel.Collection<string>' to 'string'

2 个答案:

答案 0 :(得分:0)

我不确定这些是“答案”还是仅仅是注意事项,但是过多的信息可以作为评论,所以希望这些东西可以帮到你!

根据http://validator.w3.org/feed/check.cgi?url=http%3A%2F%2Fnycphotographer.wordpress.com%2Ffeed%2F您的Feed有效,但警告“......可以改进与最广泛的Feed阅读器的互操作性......”并提供有关这些问题的建议。

WordPress Feed一般存在已知问题 - http://validator.w3.org/feed/docs/error/WPBlankLine.html

我个人已经看过WP提要的实例(实际上是昨天!),其中特定的阅读器(在这种情况下,FF)将无法将默认样式应用于(否则是未设置样式的)提要 的时间,但不是所有的时间(例如20个刷新中的~5个正确显示),这表明WP发出不一致的输出。

所以 - 我建议将代码指向一个“已知良好”的源,以验证问题不是服务器端。

答案 1 :(得分:0)

摘要在我的案例中有所帮助

lblBlogPost.Text += item.Summary + Environment.NewLine;