最好的方式来阅读RSS提要.NET中使用C#最好的方式来阅读RSS提要.NET中使用C#(Best

2019-05-13 17:51发布

什么是阅读RSS提要的最佳方式?

我使用XmlTextReader来实现这一目标。 是否有任何其他做最好的方法是什么?

XmlTextReader reader = new XmlTextReader(strURL);

DataSet ds = new DataSet();
ds.ReadXml(reader);

阅读使用RSS FeedXmlTextReader ,有没有什么办法可以填充数据ListItem ,而不是DataSet

Answer 1:

System.ServiceModel.Syndication命名空间有一些东西给你,即SyndicationFeed类。

这是一个相当简单的例子。 http://blogs.msdn.com/b/steveres/archive/2008/01/20/using-syndicationfeed-to-displaying-photos-from-spaces-live-com.aspx



Answer 2:

添加System.ServiceModel的引用

使用SyndicationFeed

string url = "http://fooblog.com/feed";
XmlReader reader = XmlReader.Create(url);
SyndicationFeed feed = SyndicationFeed.Load(reader);
reader.Close();
foreach (SyndicationItem item in feed.Items)
{
    String subject = item.Title.Text;    
    String summary = item.Summary.Text;
    ...                
}


Answer 3:

您正在寻找的SyndicationFeed类 ,它正是这么做的。



Answer 4:

这是一个古老的职位,但如果你现在来到这里像我一样,以一定的时间救人,我建议你看看它支持更广泛的RSS版本的CodeHollow.FeedReader包,更易于使用,而且似乎更稳健。 https://github.com/codehollow/FeedReader



Answer 5:

用这个 :

private string GetAlbumRSS(SyndicationItem album)
    {

        string url = "";
        foreach (SyndicationElementExtension ext in album.ElementExtensions)
            if (ext.OuterName == "itemRSS") url = ext.GetObject<string>();
        return (url);

    }
    protected void Page_Load(object sender, EventArgs e)
    {
        string albumRSS;
        string url = "http://www.SomeSite.com/rss‎";
        XmlReader r = XmlReader.Create(url);
        SyndicationFeed albums = SyndicationFeed.Load(r);
        r.Close();
        foreach (SyndicationItem album in albums.Items)
        {

            cell.InnerHtml = cell.InnerHtml +string.Format("<br \'><a href='{0}'>{1}</a>", album.Links[0].Uri, album.Title.Text);
            albumRSS = GetAlbumRSS(album);

        }



    }


文章来源: Best Way to read rss feed in .net Using C#