日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

在網站內加入RSS功能

 游戲人間 2007-04-11
RSS具有實現(xiàn)成本低、推廣速度快的優(yōu)點,已成為很多報紙媒介電子網站中的一項重要推廣技術。本節(jié)將介紹如何在網站中實現(xiàn)RSS功能,此功能主要包括兩部分:訂閱功能和提供閱讀器工具功能。本節(jié)的講解流程如圖5-7所示。

 

圖5-7  站點內加入RSS功能講解流程圖

5.4.1  使用Microsoft提供的RSS工具包

為了讓用戶可以在ASP.NET 2.0中方便地使用RSS技術,Microsoft提供了一個RSS工具包,使用戶可以簡單地實現(xiàn)RSS的訂閱和閱讀功能。

這個工具包提供了“RssDataSource”和“RssHyperLink”兩個控件,開發(fā)人員通過對兩個控件的拖曳,就可以輕松實現(xiàn)站點的RSS功能。

聲明

本工具全名為“RssToolkit-1-0-0-1”,支持C#語言。讀者可從Microsoft站點下載。

下面將介紹如何把工具包添加到VS 2005的工具箱中。

(1)打開VS 2005,新建一個網站“WebRSS”。

(2)打開“Default.aspx”頁面,切換到設計視圖,此時工具箱為可用狀態(tài)。

(3)右擊工具箱中的“常規(guī)”選項卡,在彈出的菜單中,單擊“選擇項”菜單命令,彈出“選擇工具箱項”對話框,如圖5-8所示。

圖5-8  選擇“工具箱”對話框

(4)單擊“瀏覽”按鈕,打開文件搜索對話框,如圖5-9所示。

圖5-9  文件搜索對話框

(5)在“查找范圍”下拉框中,找到工具包所在的文件夾下的“bin”文件夾,并選中文件夾中的“RssToolkit.dll”文件。

(6)單擊“打開”按鈕,系統(tǒng)回到“選擇工具箱項”對話框,此時系統(tǒng)自動選中dll文件中帶的兩個控件。

(7)單擊“確定”按鈕,此時在“常規(guī)”選項卡中,多了兩個控件:“RssDataSource”和“RssHyperLink”。

至此,工具控件已經加載完畢,可以在VS 2005中使用Microsoft提供的RSS工具包了。

5.4.2  一個簡單的RSS閱讀器

本節(jié)將使用ASP.NET 2.0提供的數(shù)據(jù)控件,通過RSS工具箱中的“RssDataSource”數(shù)據(jù)源控件,實現(xiàn)一個只有一列的網格頻道列表,并通過導航的方式顯示頻道的內容。具體步驟如下。

(1)在網站根目錄下,添加一個Web窗體“SimpleReader”。

(2)切換到設計視圖,將一個數(shù)據(jù)控件“DataList”控件拖曳到界面中。

(3)再將一個數(shù)據(jù)源控件“RssDataSource”控件拖曳到界面中。

(4)在“RssDataSource”控件的任務列表中,只有一項“配置數(shù)據(jù)源”,單擊此菜單命令,彈出地址輸入對話框,如圖5-10所示。

圖5-10  輸入RSS地址對話框

(5)在地址文本框內,輸入“http://rss.msnbc./id/3032091/device/rss/rss.xml”,此處提供一個標準的RSS文件,并提供多個文章項。

(6)單擊“OK”按鈕,返回到設計視圖。

(7)編輯數(shù)據(jù)控件“DataList”的綁定項,具體設置如代碼清單5-3所示。注意此處已經通過屬性“DataSourceID”,將“DataList”控件的數(shù)據(jù)源綁定到“RssDataSource”控件上。

代碼清單5-3  DataList控件的數(shù)據(jù)源綁定設置

        <asp:DataList ID="DataList1" runat="server"  DataSourceID="RssDataSource1>

                    <FooterStyle BackColor="#1C5E55" Font-Bold="True" ForeColor= "White" />

            <SelectedItemStyle BackColor="#C5BBAF" Font-Bold="True" ForeColor= "#333333" />

            <ItemTemplate>

                <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl=‘<%# Eval("link") %>‘ Text=‘<%# Eval("title") %>‘></asp:HyperLink>

            </ItemTemplate>

            <AlternatingItemStyle BackColor="White" />

            <ItemStyle BackColor="#E3EAEB" />

            <HeaderStyle BackColor="#1C5E55" Font-Bold="True" ForeColor="White" />

        </asp:DataList>

文本框:  
圖5-11  簡單閱讀器運行效果

(8)此時RSS的讀取地址和數(shù)據(jù)控件的綁定內容都已經設置完畢。按“Ctrl+S”鍵保存頁面的設計。

(9)將此頁設計為起始頁,按F5鍵運行程序,測試能否正確顯示訂閱的RSS新聞列表,運行結果如圖5-11所示。

5.4.3  一個復雜的RSS閱讀器

上一小節(jié)主要講解了一個簡單的閱讀器的制作過程,本節(jié)將通過一個復雜的數(shù)據(jù)控件“GridView”,實現(xiàn)一個頻道列表網格,其中列出頻道的主題、鏈接和描述等信息,并采用數(shù)據(jù)源后綁定的技術為“GridView”控件配置數(shù)據(jù)源。具體實現(xiàn)步驟如下。

(1)在網站根目錄下,添加一個Web窗體“ComplexRSS”。

(2)切換到設計視圖,將一個“GridView”控件拖曳到界面中,并設計其樣式,具體樣式如代碼清單5-4所示。因為采用數(shù)據(jù)源后綁定的技術,此處不需為“GridView”控件配置數(shù)據(jù)源。

代碼清單5-4  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" />

            <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)設計完界面后,需要編寫實現(xiàn)綁定的代碼,此時要用到RSS工具的類庫,將其添加到此站點中。右鍵單擊網站根目錄,在彈出的快捷菜單中,選擇“添加引用”菜單命令,彈出“添加引用”對話框,如圖5-12所示。

(4)切換到“瀏覽”選項卡,如圖5-13所示。

(5)通過“查找范圍”下拉框,找到RSS工具所在的文件夾“RssToolkit-1-0-0-1”,選擇其中的文件夾“bin”,選中其中的文件“RssToolkit.dll”。

(6)單擊“確定”按鈕,在網站根目錄下,多了一個“Bin”文件夾,其中包含一個文件,即“RssToolkit.dll”。

(7)對類文件的引用已經完成,現(xiàn)在使用類提供的方法。按F7鍵進入“ComplexRSS”頁面的代碼界面。

圖5-12  “添加引用”對話框

圖5-13  “瀏覽”選項卡界面

(8)必須先添加對RSS工具所在的命名空間的引用,語法是:“Using RssToolkit;”。

(9)在“Page_Load”事件中,調用RSS工具的方法,實現(xiàn):GridView,控件的數(shù)據(jù)源綁定,具體實現(xiàn)代碼如清單5-5所示。

代碼清單5-5  GridView的數(shù)據(jù)源后綁定代碼

using RssToolkit;

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

{

      protected void Page_Load(object sender, EventArgs e)

      {

           //創(chuàng)建一個頻道

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

           //為GridView綁定數(shù)據(jù)源

           //數(shù)據(jù)源來自頻道中的所有項目

           GridView1.DataSource = c.SelectItems();

           GridView1.DataBind();

     }

}

(10)全部完成后,按“Ctrl+S”鍵保存所做的設計。

(11)將此頁設置為起始頁,按F5鍵運行程序,測試網格綁定的頻道列表是否正常導航,最終運行界面如圖5-14所示。

圖5-14  復雜閱讀器運行界面

5.4.4  讓站點提供訂閱功能

RSS工具包總共提供了兩個控件,一個是“RssDataSource”,在簡單閱讀器的例子中,已經介紹了其使用方法;另一個是“RssHyperLink”,此控件主要用來為站點提供訂閱功能。本節(jié)將通過介紹此控件來逐步完成站點的訂閱功能,具體步驟如下。

(1)要在站點中實現(xiàn)訂閱功能,必須提供允許用戶訂閱的功能列表,本節(jié)手工編寫兩個頻道,提供的內容是前面創(chuàng)建的兩個閱讀器的RSS訂閱。

(2)在網站根目錄下,添加一個“一般處理程序”文件,命名為“Sample.ashx”。處理程序主要是使用繼承自“IHttpHandler”接口的Web處理類,完成各種文件的轉換,并讓Web應用程序識別這些文件。

(3)本例使用的處理接口由RSS工具提供,所以必須在文件內引用工具的命名空間“RssToolkit”,最后添加頻道的處理內容,如代碼清單5-6所示。在清單中有一個頻道和兩個項。

代碼清單5-6  示例RSS文件的處理程序

<%@ 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;

          //創(chuàng)建一個頻道內的項

          item = new GenericRssElement();

          //為項的基本屬性賦值

          item["title"] = "Complex";

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

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

          //將項添加到頻道內

          Channel.Items.Add(item);

          //創(chuàng)建一個頻道內的項

          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鍵出現(xiàn)其屬性窗口,修改屬性“NavigateUrl”為“~/Sample.ashx”。

(6)按“Ctrl+S”鍵保存所有的設計。

(7)按F5鍵運行程序,測試網站的訂閱功能。

    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多