[转载]ASP.NET实现RSS订阅(Rss Toolkit 1.0)

[转载]ASP.NET实现RSS订阅(Rss Toolkit 1.0) – tryandtry.cn – 博客园.

RSS具有实现成本低、推广速度快的优点,已成为很多报纸媒介电子网站中的一项重要推广技术。本节将介绍如何在网站中实现RSS功能,此功能主要包括两部分:订阅功能和提供阅读器工具功能。今天讲讲订阅功能的实现技术。
1 使用Microsoft提供的RSS工具包
为了让用户可以在ASP.NET 2.0中方便地使用RSS技术,Microsoft提供了一个RSS工具包,使用户可以简单地实现RSS的订阅和阅读功能。
这个工具包提供了“RssDataSource”和“RssHyperLink”两个控件,开发人员通过对两个控件的拖曳,就可以轻松实现站点的RSS功能。
声 明 本工具全名为“RssToolkit-1-0-0-1”,支持C#语言。读者可从Microsoft站点下载到最新版本Rss Toolkit 2.0,但此版本对于由后台实现复杂的RSS阅读效果有点困难,而RssToolkit 1.0又难以找到,如果你们需要的话点击此处留言,我到时发给你们。

下面将介绍如何把工具包添加到VS 2005的工具箱中。
(1)打开VS 2005,新建一个网站“WebRSS”。
(2)打开“Default.aspx”页面,切换到设计视图,此时工具箱为可用状态。
(3)右击工具箱中的“常规”选项卡,在弹出的菜单中,单击“选择项”菜单命令,弹出“选择工具箱项”对话框,如图1所示。

图1 选择“工具箱”对话框

(4)单击“浏览”按钮,打开文件搜索对话框,如图2所示。

图2 文件搜索对话框

(5)在“查找范围”下拉框中,找到工具包所在的文件夹下的“bin”文件夹,并选中文件夹中的“RssToolkit.dll”文件。
(6)单击“打开”按钮,系统回到“选择工具箱项”对话框,此时系统自动选中dll文件中带的两个控件。
(7)单击“确定”按钮,此时在“常规”选项卡中,多了两个控件:“RssDataSource”和“RssHyperLink”。
至此,工具控件已经加载完毕,可以在VS 2005中使用Microsoft提供的RSS工具包了。
1.1 一个简单的RSS阅读器
本节将使用ASP.NET 2.0提供的数据控件,通过RSS工具箱中的“RssDataSource”数据源控件,实现一个只有一列的网格频道列表,并通过导航的方式显示频道的内容。具体步骤如下。
(1)切换到设计视图,将一个数据控件“DataList”控件拖曳到界面中。
(2)再将一个数据源控件“RssDataSource”控件拖曳到界面中。
(3)在“RssDataSource”控件的任务列表中,只有一项“配置数据源”,单击此菜单命令,弹出地址输入对话框,如图3所示。

图3 输入RSS地址对话框

(4)在地址文本框内,输入“http://www.tryandtry.cn/index.xml”,此处提供一个标准的RSS文件,并提供多个文章项。
(5)单击“OK”按钮,返回到设计视图。
(6)编辑数据控件“DataList”的绑定项,具体设置如代码清单1-1所示。注意此处已经通过属性“DataSourceID”,将“DataList”控件的数据源绑定到“RssDataSource”控件上。
代码清单1-1 DataList控件的数据源绑定设置
<asp:DataList ID=”DataList1″ runat=”server” DataSourceID=”RssDataSource1″>
<ItemTemplate>
title:
<asp:Label ID=”titleLabel” runat=”server” Text='<%# Eval(“title”) %>’ />
<br />
link:
<asp:Label ID=”linkLabel” runat=”server” Text='<%# Eval(“link”) %>’ />
<br />
description:
<asp:Label ID=”descriptionLabel” runat=”server”
Text='<%# Eval(“description”) %>’ />
<br />
pubDate:
<asp:Label ID=”pubDateLabel” runat=”server” Text='<%# Eval(“pubDate”) %>’ />
<br />
<br />
</ItemTemplate>
</asp:DataList>
//以下是RSS控件的代码
<cc1:RssDataSource ID=”RssDataSource1″ runat=”server”
Url=”http://www.tryandtry.cn/index.xml“>
</cc1:RssDataSource>
运行效果图:

图4 运行效果图(在此没对代码进行美化,大家学习时就改改)

(7)此时RSS的读取地址和数据控件的绑定内容都已经设置完毕。按“Ctrl+S”键保存页面的设计。
(8)将此页设计为起始页,按F5键运行程序,测试能否正确显示订阅的RSS新闻列表,运行结果如图4所示。
1.2 一个复杂的RSS阅读器
上一小节主要讲解了一个简单的阅读器的制作过程,本节将通过一个复杂的数据控件“GridView”,实现一个频道列表网格,其中列出频道的主题、链接和描述等信息,并采用数据源后绑定的技术为“GridView”控件配置数据源。具体实现步骤如下。
(1)在网站根目录下,添加一个Web窗体“RSSChanel”。
(2)切换到设计视图,将一个“GridView”控件拖曳到界面中,并设计其样式,具体样式如代码清单1-2所示。因为采用数据源后绑定的技术,此处不需为“GridView”控件配置数据源。
代码清单1-2 GridView的样式配置源HTML代码
<asp:GridView ID=”GridView1″ runat=”server” CellPadding=”4″ ForeColor=”#333333″
GridLines=”None”>
<FooterStyle BackColor=”#5D7B9D” Font-Bold=”True” ForeColor=”White” />
<RowStyle BackColor=”#F7F6F3″ ForeColor=”#333333″ />
<PagerStyle BackColor=”#284775″ ForeColor=”White” HorizontalAlign=”Center” />
<SelectedRowStyle BackColor=”#E2DED6″ Font-Bold=”True” ForeColor=”#333333″ />
<HeaderStyle BackColor=”#5D7B9D” Font-Bold=”True” ForeColor=”White” />
<EditRowStyle BackColor=”#999999″ />
<AlternatingRowStyle BackColor=”White” ForeColor=”#284775″ />
</asp:GridView>
(3)按F7键进入“RSSChanel”页面的代码界面。
(4)必须先添加对RSS工具所在的命名空间的引用,语法是:“Using RssToolkit;”。
(5)在“Page_Load”事件中,调用RSS工具的方法,实现:GridView,控件的数据源绑定,具体实现代码如清单1-3所示。
代码清单1-3 GridView的数据源后绑定代码
using RssToolkit;
public partial class RSSChanel : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
//创建一个频道
GenericRssChannel c = GenericRssChannel.LoadChannel(“http://www.tryandtry.cn/index.xml“);
//为GridView绑定数据源
//数据源来自频道中的所有项目
GridView1.DataSource = c.SelectItems();
GridView1.DataBind();
}
}
(6)全部完成后,按“Ctrl+S”键保存所做的设计。
(7)将此页设置为起始页,按F5键运行程序,测试网格绑定的频道列表是否正常导航,最终运行界面如图5所示。

图5 复杂阅读器运行界面

赞(0) 打赏
分享到: 更多 (0)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏