如何利用RssToolKit2.0在ASP.Net中解析RSS并构建RSS阅读器?
- 内容介绍
- 文章标签
- 相关推荐
本文共计841个文字,预计阅读时间需要4分钟。
在Python中读取RSS可以使用FeedParser库。那么在ASP.NET中呢?其实也不难。我们可以自己开发一个request去获取XML,然后用XmlReader去解析XML中的DOM对象。当然,这样操作可能会有些繁琐。在ASP.NET中,我们可以使用以下方法:
csharp// 使用HttpClient获取RSS数据HttpClient client=new HttpClient();var response=await client.GetAsync(http://example.com/rss.xml);var content=await response.Content.ReadAsStringAsync();
// 使用XmlReader解析XMLusing (XmlReader reader=XmlReader.Create(new StringReader(content))){ while (reader.Read()) { // 根据需要读取XML元素 if (reader.IsStartElement()) { switch (reader.LocalName) { case item: // 读取item元素的内容 break; // 其他元素的处理 } } }}
在Python要读取RSS可以使用FeedParser。那么在ASP.net里面呢?难道我们要自己发出request去取得XML,并且自己用XmlReader去解析XML里面的DOM对象吗? 当然不用这么麻烦啰。 在ASP.net里面,我们可以使用RssToolkit 2.0,这是一个开放源代码(Open Source)的RSS处理函数库。里面提供了很完善的RSS处理函数。你可以自己烧制RSS feed,也可以透过它去解析RSS。
HI!我是finalevil,这是我的分站,
欢迎您订阅我的RSS ,或是前往本站发表意见。
在Python要读取RSS可以使用FeedParser。那么在ASP.net里面呢?难道我们要自己发出request去取得XML,并且自己用XmlReader去解析XML里面的DOM对象吗? 当然不用这么麻烦啰。 在ASP.net里面,我们可以使用RssToolkit 2.0,这是一个开放源代码(Open Source)的RSS处理函数库。里面提供了很完善的RSS处理函数。你可以自己烧制RSS feed,也可以透过它去解析RSS。
在CodePlex上的RssToolkit 2.0教学其实还蛮清楚的,对我而言够用了。
这里特别说一下其中两个常用的方法:
1.使用RssDataSource (看这里) 有使用过SqlDataSource吗?没错,这两个东西其实很像。 在页面上拉出一个RssDataSource,设定好RssDataSource的RSS数据来源路径,例如我的RSS: feeds.feedburner.com/FinalevilsBlog。 再拉一个GirdView,设定GridView的DataSource为RssDataSource就可以看到GridView化身成为RSS阅读器了。
2.使用RssDocument 类(看这里)
RssToolkit.Rss.RssDocument rss = RssToolkit.Rss.RssDocument.Load( new System.Uri("feeds.feedburner.com/FinalevilsBlog")); GridView1.DataSource = rss.SelectItems(); GridView1.DataBind();
或是你也可以在rss.Channel.Items里面找到需要的Property。
Items是一个RssItem的集合。里面包含了你会需要用到的各种属性。像是PubDate文章的发布日期、Link文章的网址、Description文章内容、Author文章作者、Categories文章分类等等。 其中Link被我用红色标示起来。这是有原因的。
因为当你把RssToolkit 2.0的源代码下载下来。在使用的时候会发现解析出来的Link是有问题的。他只能找到文章所在博客的博客网址,而非文章本身的网址。 因此上网Google了一下。找到解决方法。参考自A Small Fix for RSSToolkit 2.0 原来是源代码中ResourcesAtomToRSS20.xsl,这个XSL文件有错误。其他两个错误不知是啥。 但是第43行,原本是
要替换成
差别在加上了child::这样解析的结果就会正确了。
?
HI!我是finalevil,这是我的分站,
欢迎您订阅我的RSS ,或是前往本站发表意见。
原文:大专栏 [ASP.Net]用RssToolKit2.0解析RSS,制作RSS阅读器
本文共计841个文字,预计阅读时间需要4分钟。
在Python中读取RSS可以使用FeedParser库。那么在ASP.NET中呢?其实也不难。我们可以自己开发一个request去获取XML,然后用XmlReader去解析XML中的DOM对象。当然,这样操作可能会有些繁琐。在ASP.NET中,我们可以使用以下方法:
csharp// 使用HttpClient获取RSS数据HttpClient client=new HttpClient();var response=await client.GetAsync(http://example.com/rss.xml);var content=await response.Content.ReadAsStringAsync();
// 使用XmlReader解析XMLusing (XmlReader reader=XmlReader.Create(new StringReader(content))){ while (reader.Read()) { // 根据需要读取XML元素 if (reader.IsStartElement()) { switch (reader.LocalName) { case item: // 读取item元素的内容 break; // 其他元素的处理 } } }}
在Python要读取RSS可以使用FeedParser。那么在ASP.net里面呢?难道我们要自己发出request去取得XML,并且自己用XmlReader去解析XML里面的DOM对象吗? 当然不用这么麻烦啰。 在ASP.net里面,我们可以使用RssToolkit 2.0,这是一个开放源代码(Open Source)的RSS处理函数库。里面提供了很完善的RSS处理函数。你可以自己烧制RSS feed,也可以透过它去解析RSS。
HI!我是finalevil,这是我的分站,
欢迎您订阅我的RSS ,或是前往本站发表意见。
在Python要读取RSS可以使用FeedParser。那么在ASP.net里面呢?难道我们要自己发出request去取得XML,并且自己用XmlReader去解析XML里面的DOM对象吗? 当然不用这么麻烦啰。 在ASP.net里面,我们可以使用RssToolkit 2.0,这是一个开放源代码(Open Source)的RSS处理函数库。里面提供了很完善的RSS处理函数。你可以自己烧制RSS feed,也可以透过它去解析RSS。
在CodePlex上的RssToolkit 2.0教学其实还蛮清楚的,对我而言够用了。
这里特别说一下其中两个常用的方法:
1.使用RssDataSource (看这里) 有使用过SqlDataSource吗?没错,这两个东西其实很像。 在页面上拉出一个RssDataSource,设定好RssDataSource的RSS数据来源路径,例如我的RSS: feeds.feedburner.com/FinalevilsBlog。 再拉一个GirdView,设定GridView的DataSource为RssDataSource就可以看到GridView化身成为RSS阅读器了。
2.使用RssDocument 类(看这里)
RssToolkit.Rss.RssDocument rss = RssToolkit.Rss.RssDocument.Load( new System.Uri("feeds.feedburner.com/FinalevilsBlog")); GridView1.DataSource = rss.SelectItems(); GridView1.DataBind();
或是你也可以在rss.Channel.Items里面找到需要的Property。
Items是一个RssItem的集合。里面包含了你会需要用到的各种属性。像是PubDate文章的发布日期、Link文章的网址、Description文章内容、Author文章作者、Categories文章分类等等。 其中Link被我用红色标示起来。这是有原因的。
因为当你把RssToolkit 2.0的源代码下载下来。在使用的时候会发现解析出来的Link是有问题的。他只能找到文章所在博客的博客网址,而非文章本身的网址。 因此上网Google了一下。找到解决方法。参考自A Small Fix for RSSToolkit 2.0 原来是源代码中ResourcesAtomToRSS20.xsl,这个XSL文件有错误。其他两个错误不知是啥。 但是第43行,原本是
要替换成
差别在加上了child::这样解析的结果就会正确了。
?
HI!我是finalevil,这是我的分站,
欢迎您订阅我的RSS ,或是前往本站发表意见。
原文:大专栏 [ASP.Net]用RssToolKit2.0解析RSS,制作RSS阅读器

