[ASP.Net]用RssToolKit2.0解析RSS,制作RSS阅读器
在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: http://feeds.feedburner.com/FinalevilsBlog。 再拉一个GirdView,设定GridView的DataSource为RssDataSource就可以看到GridView化身成为RSS阅读器了。
2.使用RssDocument 类(看这里)
RssToolkit.Rss.RssDocument rss =
RssToolkit.Rss.RssDocument.Load(
new System.Uri("http://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阅读器
原文地址:https://www.cnblogs.com/petewell/p/11516530.html
- dg broker校验失败的一个奇怪问题(二) (r8笔记第51天)
- Jdbc知识点全整理,你值得拥有 (2)
- 抓住“新代码”的影子 —— 基于GoAhead系列网络摄像头多个漏洞分析
- Python 用OPEN读文件报错 ,路径以及r
- python 如何设置多线程
- R语言读CSV、txt文件方式以及read.table read.csv 和readr(大数据读取包)
- python 多进程设置 整理版本1
- 11g Dataguard中的snapshot standby特性(r8笔记第49天)
- 物化视图刷新结合ADG的尝试 (r8笔记第47天)
- 关于CPU使用率高的awr分析(r8笔记第46天)
- 图形工具和命令行的博弈-swingbench配置(r8笔记第63天)
- 手把手教你用LDA特征选择
- 一个关于执行计划的小问题测试(r8笔记第60天)
- 【Go 语言社区】www.golangweb.com通过工信部审核,正式挂牌社区域名
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法