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 复杂阅读器运行界面

posted on 2010-08-15 19:08  Lonlong  阅读(3088)  评论(15编辑  收藏  举报