• RSS制作阅读器(利用RssToolkit for asp.net 2.0)


    (1)在网站根目录下,添加一个Web窗体“ComplexRSS”。

    (2)切换到设计视图,将一个“GridView”控件拖曳到界面中,并设计其样式,具体样式如代码清单5-4所示。因为采用数据源后绑定的技术,此处不需为“GridView”控件配置数据源。

    <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" />

    <EditRowStyle BackColor="#999999" />

    <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor= "#333333" />

    <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign= "Center" />

    <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />

    <AlternatingRowStyle BackColor="White" ForeColor="#284775" />

    </asp:GridView>

    (3)设计完界面后,需要编写实现绑定的代码,此时要用到RSS工具的类库,将其添加到此站点中。右键单击网站根目录,在弹出的快捷菜单中,选择“添加引用”菜单命令,弹出“添加引用”对话框,如图5-12所示。

    (4)切换到“浏览”选项卡,如图5-13所示。

    (5)通过“查找范围”下拉框,找到RSS工具所在的文件夹“RssToolkit-1-0-0-1”,选择其中的文件夹“bin”,选中其中的文件“RssToolkit.dll”。

    (6)单击“确定”按钮,在网站根目录下,多了一个“Bin”文件夹,其中包含一个文件,即“RssToolkit.dll”。

    (7)对类文件的引用已经完成,现在使用类提供的方法。按F7键进入“ComplexRSS”页面的代码界面。
    (8)必须先添加对RSS工具所在的命名空间的引用,语法是:“Using RssToolkit;”。

    (9)在“Page_Load”事件中,调用RSS工具的方法,实现:GridView,控件的数据源绑定,具体实现代码如清单5-5所示。

    using RssToolkit;

    public partial class ComplexRSS : System.Web.UI.Page

    {

    protected void Page_Load(object sender, EventArgs e)

    {

    //创建一个频道

    GenericRssChannel c = GenericRssChannel.LoadChannel("http://blog.csdn. net/ championchen79/category/197094.aspx/rss");

    //为GridView绑定数据源

    //数据源来自频道中的所有项目

    GridView1.DataSource = c.SelectItems();

    GridView1.DataBind();

    }

    }

    (10)全部完成后,按“Ctrl+S”键保存所做的设计。

    (11)将此页设置为起始页,按F5键运行程序,测试网格绑定的频道列表是否正常导航,最终运行界面如图5-14所示。

    5.4.4 让站点提供订阅功能

    RSS工具包总共提供了两个控件,一个是“RssDataSource”,在简单阅读器的例子中,已经介绍了其使用方法;另一个是“RssHyperLink”,此控件主要用来为站点提供订阅功能。本节将通过介绍此控件来逐步完成站点的订阅功能,具体步骤如下。

    (1)要在站点中实现订阅功能,必须提供允许用户订阅的功能列表,本节手工编写两个频道,提供的内容是前面创建的两个阅读器的RSS订阅。

    (2)在网站根目录下,添加一个“一般处理程序”文件,命名为“Sample.ashx”。处理程序主要是使用继承自“IHttpHandler”接口的Web处理类,完成各种文件的转换,并让Web应用程序识别这些文件。

    (3)本例使用的处理接口由RSS工具提供,所以必须在文件内引用工具的命名空间“RssToolkit”,最后添加频道的处理内容,如代码清单5-6所示。在清单中有一个频道和两个项。

    <%@ WebHandler Language="C#" Class="Sample" %>

    using System;

    using System.Web;

    using RssToolkit;

    public class Sample :GenericRssHttpHandlerBase

    {

    protected override void PopulateChannel(string channelName, string userName)

    {

    //添加频道

    Channel["title"] = "Sample Channel";

    //如果频道名称不为空

    if (!string.IsNullOrEmpty(channelName))

    {

    //设置频道名称

    Channel["title"] += " '" + channelName + "'";

    }

    //如果访问用户名不为空

    if (!string.IsNullOrEmpty(userName))

    {

    //设置用户名名称

    Channel["title"] += " (generated for " + userName + ")";

    }

    //设置频道的默认其他属性

    //此处是简单阅读器的RSS

    Channel["link"] = "~/Default.aspx";

    Channel["description"] = "Channel For Test in ASP.NET RSS";

    Channel["ttl"] = "10";

    Channel["name"] = channelName;

    Channel["user"] = userName;

    //定义项

    GenericRssElement item;

    //创建一个频道内的项

    item = new GenericRssElement();

    //为项的基本属性赋值

    item["title"] = "Complex";

    item["description"] = "Complex RSS using RssDataSource";

    item["link"] = "~/ComplexRSS.aspx";

    //将项添加到频道内

    Channel.Items.Add(item);

    //创建一个频道内的项

    item = new GenericRssElement();

    //为项的基本属性赋值

    item["title"] = "Simple";

    item["description"] = "Simple RSS is tested";

    item["link"] = "~/SimpleReader.aspx";

    //将项添加到频道内

    Channel.Items.Add(item);

    }

    }

    (4)打开“Default.aspx”页面,将一个“RssHyperLink”控件拖曳到设计视图。

    (5)按F4键出现其属性窗口,修改属性“NavigateUrl”为“~/Sample.ashx”。

    (6)按“Ctrl+S”键保存所有的设计。

    (7)按F5键运行程序,测试网站的订阅功能。

    工具下载 

  • 相关阅读:
    手机评測怎么看?
    【c++】简单的string类的几个基本函数
    免费软件怎样赚钱?
    【leetcode】Swap Nodes in Pairs (middle)
    【leetcode】Divide Two Integers (middle)☆
    【leetcode】4Sum(middle)
    【leetcode】Longest Common Prefix (easy)
    【leetcode】3Sum Closest(middle)
    【leetcode】Container With Most Water(middle)
    【leetcode】Palindrome Number (easy)
  • 原文地址:https://www.cnblogs.com/liping13599168/p/721076.html
Copyright © 2020-2023  润新知