




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第8章 RSS,RSS是Web 2.0的重要元素。RSS是Really Simple Syndication的簡稱,它是一種網(wǎng)頁內(nèi)容聯(lián)合格式(Web Content Sydication Format)。本章將介紹RSS文檔的規(guī)范、如何創(chuàng)建一個簡單的RSS文檔、訂閱RSS源的方法,并創(chuàng)建一個基于Web的RSS閱讀器來閱讀訂閱的RSS源。其中,該RSS閱讀器的效果,本章網(wǎng)絡(luò)應(yīng)用程序(網(wǎng)站)的名稱為RSS。,8.1 什么是RSS,本小節(jié)將介紹RSS的基礎(chǔ)知識。內(nèi)容包括RSS的定義、RSS文檔的格式、RSS的技術(shù)規(guī)范,以及目前比較流行的RSS的閱讀器。,8.1.1 RSS概述,RSS文檔也是一種XM
2、L文檔。因此,RSS文檔都必須遵循XML 1.0規(guī)范(該規(guī)范發(fā)布在W3C網(wǎng)站上)。目前,RSS存在多個版本:0.91(2000年)、0.92(2000年12月)、0.94(2002年8月)、2.0.1(2002年)等。在每一個RSS文檔的開頭處,存在一個元素。該元素包含屬性version,該屬性指定RSS文檔的版本。下面代碼標(biāo)識了RSS文檔的版本為2.0版本。 ,8.1.2 RSS技術(shù)規(guī)范,本小節(jié)將介紹RSS文檔的技術(shù)規(guī)范,主要包括RSS文檔的數(shù)據(jù)類型和元素。 1數(shù)據(jù)類型 2元素,8.1.3 目前流行的RSS閱讀器,隨著RSS摘要數(shù)量的增加,RSS閱讀器已經(jīng)成為了Web 2.0世界里面的一個必
3、需品。它可以幫助用戶發(fā)現(xiàn)和組織感興趣的頻道列表,并提供統(tǒng)一的閱讀界面。下面將介紹國內(nèi)外目前比較流行的RSS閱讀器。 1看天下() 2新聞螞蟻() 3周博通() 4資訊通() 5新浪點(diǎn)點(diǎn)通,8.2 總體功能設(shè)計和數(shù)據(jù)庫設(shè)計,應(yīng)用程序RSS主要實現(xiàn)RSS訂閱、RSS閱讀器兩大功能。其中,RSS訂閱包括訂閱互聯(lián)網(wǎng)上包含RSS新聞的頁面等功能。RSS閱讀器包括讀取RSS頁面的內(nèi)容,并解釋該頁面的功能。,8.2.1 總體功能設(shè)計,應(yīng)用程序RSS主要實現(xiàn)了RSS訂閱和RSS閱讀器兩大功能。其中,RSS訂閱主要處理RSS源。RSS閱讀器主要處理RSS頁面的內(nèi)容。具體說明如下: 1RSS訂閱 2RSS閱讀器,
4、8.2.2 表設(shè)計,應(yīng)用程序RSS的數(shù)據(jù)庫比較簡單,它僅僅包含一個表RSSUrl。該表存儲RSS頁面的鏈接地址。RSS閱讀器將讀取該表中存儲地址的頁面的內(nèi)容。下面對RSS外鏈接地址表RSSUrl作下介紹。,8.3 應(yīng)用程序RSS,本小節(jié)主要介紹應(yīng)用程序RSS的組成,及其通用模塊的設(shè)計。其中,該應(yīng)用程序由Web窗體頁、類文件、主題文件、資源文件等組成。通用模塊包括一個名稱為“模塊標(biāo)題”的用戶控件ModuleTitle.ascx,它存放在UserControl目錄下。 8.3.1 應(yīng)用程序RSS的組成 應(yīng)用程序RSS包含Admin、App_Code、App_Themes、Bin、Portal和Us
5、erControl目錄,以及頁面Default.aspx、配置文件Web.Config、全局文件Global.asax等。展開Admin和Portal目錄,在【解決方案資源管理器】面板中查看應(yīng)用程序RSS組成,如圖8.3所示。應(yīng)用程序RSS的各個目錄和文件的功能具體說明如下: Admin目錄,主要包含超級管理員使用的后臺管理頁面,如注冊新用戶、用戶管理等頁面。,8.3.2 配置文件Web.Config,應(yīng)用程序RSS的配置文件Web.Config放置在其根目錄下。筆者在該文件中配置了訪問數(shù)據(jù)庫Web2ASPNET2DB的鏈接字符串“data source=localhost;userid=sa
6、;pwd=123456;database=Web2ASPNET2DB”。同時還配置了應(yīng)用程序RSS的驗證方式為“Windows”。,8.3.3 添加應(yīng)用程序的引用文件,應(yīng)用程序RSS使用了3個基礎(chǔ)工程(第2章已經(jīng)詳細(xì)介紹過)中的功能。在此,筆者該應(yīng)用程序中添加了這三個引用(即文件的后綴名為.dll)。它們具體為: Web2ASPNET2.CommonOperation.dll。 Web2ASPNET2.OperateSqlServer.dll。 Web2ASPNET2.UserCommonOperation.dll。,8.3.4 主頁Default.aspx,應(yīng)用程序RSS的主頁Default
7、.aspx特別簡單。該頁面在Page_Load(object sender, EventArgs e)事件中重定向到用戶登錄頁面UserLogin.aspx。程序代碼如下所示。 protected void Page_Load(object sender,EventArgs e) Response.Redirect(/Portal/UserLogin.aspx); /重定向到登錄頁面 ,8.3.5 通用模塊設(shè)計,應(yīng)用程序RSS中的通用模塊設(shè)計只包含一個名稱為“模塊標(biāo)題”的用戶控件。實現(xiàn)該控件的文件為ModuleTitle.ascx,它的代碼隱藏文件為ModuleTitle.ascx.cs。該用
8、戶控件的設(shè)計界面,,8.4 關(guān)鍵技術(shù)詳解,本小節(jié)將介紹應(yīng)用程序RSS中的關(guān)鍵技術(shù)創(chuàng)建一個簡單的RSS頁面。在此,筆者定義了名稱為SampleRss的類,它專門用來創(chuàng)建一個簡單的RSS頁面。類SampleRss定義了創(chuàng)建RSS頁面的頭部、Item項、尾部,以及輸出RSS頁面等方法。具體方法如下所示。 (1)private XmlTextWriter WriteRSSHeader(XmlTextWriter writer),創(chuàng)建RSS頁面的頭部。 (2)private XmlTextWriter WriteRSSItem(XmlTextWriter writer, string title,str
9、ing link, string description),創(chuàng)建RSS頁面的Item項。,8.4.1 創(chuàng)建RSS頁面的頭部,方法WriteRSSHeader(XmlTextWriter writer)創(chuàng)建RSS頁面的頭部。它通過XmlTextWriter對象writer輸出RSS頁面必須的內(nèi)容,如RSS頁面的標(biāo)志(rss)、版本、頻道的標(biāo)題、頻道的鏈接、頻道的描述、版權(quán)信息等。,8.4.2 創(chuàng)建RSS的Item項,方法WriteRSSItem(XmlTextWriter writer, string title,string link,string description)和方法WriteRS
10、SItem(XmlTextWriter writer,RSSItem item)都是創(chuàng)建RSS頁面的Item項。其中,第一個方法只向頁面輸出Item的標(biāo)題、鏈接和描述。第二個方法可以輸出Item的所有屬性。,8.4.3 創(chuàng)建RSS頁面的尾部,方法WriteRSSTailer(XmlTextWriter writer)創(chuàng)建RSS頁面的尾部。它通過XmlTextWriter對象writer輸出RSS頁面的結(jié)尾內(nèi)容,如RSS頁面的結(jié)束標(biāo)志()等。程序代碼如下所示。,8.4.4 輸出RSS頁面,方法CreateSampleRss(HttpResponse response,params RSSItem
11、items)創(chuàng)建一個RSS頁面,即在網(wǎng)頁上輸出RSS頁的內(nèi)容。它首先調(diào)用方法WriteRSSHeader(XmlTextWriter writer)創(chuàng)建RSS頁面的頭部;然后調(diào)用方法WriteRSSItem(XmlTextWriter writer,RSSItem item)創(chuàng)建RSS頁面的Item項;最后調(diào)用方法WriteRSSTailer(XmlTextWriter writer)創(chuàng)建RSS頁面的尾部。,8.4.5 創(chuàng)建一個簡單的RSS頁面,頁面SampleRSS.aspx創(chuàng)建一個簡單RSS頁面,它的代碼隱藏文件為SampleRSS.aspx.cs。該頁面的最終效果, RSS頁面Sampl
12、eRSS.aspx在Page_Load(object sender,System.EventArgs e)事件中創(chuàng)建了兩個Item項,并設(shè)置了每一個Item項的Title、Link、Description屬性的值。最后調(diào)用SampleRss類的方法CreateSampleRss(HttpResponse response,params RSSItem items)輸出這兩個Item項,即創(chuàng)建為一個簡單RSS頁面。Page_Load(object sender,System.EventArgs e)事件的程序,8.5 訂閱RSS,本小節(jié)主要介紹應(yīng)用程序RSS中與訂閱RSS相關(guān)的功能,如訂閱RSS
13、源、修改已經(jīng)訂閱的RSS源、RSS源管理等。,8.5.1 數(shù)據(jù)訪問層設(shè)計,類Url定義了訂閱RSS功能的數(shù)據(jù)訪問層的操作。該類定義的方法如下: public DataSet GetUrls(),獲取所有訂閱的RSS源。 public SqlDataReader GetSingleUrl(int urlID),獲取單個訂閱的RSS源。 public int AddUrl(string name,string url),訂閱RSS源。 public int UpdateUrl(int urlID,string name,string url),修改訂閱的RSS源。 public int Delet
14、eUrl(int urlID),刪除訂閱的RSS源。,8.5.2 存儲過程,8.5.1小節(jié)中的類Url使用了5個存儲過程。這5個存儲都操作RSSUrl表,說明如下所示。 Pr_GetRSSUrls,獲取所有訂閱的RSS源。 Pr_GetSingleRSSUrl,獲取單個訂閱的RSS源。 Pr_AddRSSUrl,訂閱RSS源。 Pr_UpdateRSSUrl,修改訂閱的RSS源。 Pr_DeleteRSSUrl,刪除訂閱的RSS源。,8.5.3 訂閱RSS源,訂閱RSS源由頁面AddUrl.aspx實現(xiàn),它的代碼隱藏文件為AddUrl.aspx.cs。該頁面實現(xiàn)功能如下。 輸入新RSS源的名稱
15、和URL。 添加新RSS源,并把新RSS源的信息提交到數(shù)據(jù)庫中。 返回到RSS源管理頁面UrlManage.aspx。,8.5.4 修改RSS源,修改RSS源由頁面UpdateUrl.aspx實現(xiàn),它的代碼隱藏文件為UpdateUrl.aspx.cs。該頁面實現(xiàn)功能如下。 編輯RSS源的名稱和URL。 修改RSS源,并把修改后的RSS源信息提交到數(shù)據(jù)庫中。 返回到RSS源管理頁面UrlManage.aspx。,8.5.5 RSS源管理,RSS源管理由頁面UrlManage.aspx實現(xiàn),它的代碼隱藏文件為UrlManage.aspx.cs。該頁面實現(xiàn)功能如下。 以列表形式顯示RSS源的信息。
16、提供重定向到添加和修改RSS源頁面的按鈕。 提供刪除RSS源的功能。,8.6 RSS閱讀器,本小節(jié)主要介紹應(yīng)用程序RSS中與RSS閱讀器相關(guān)的功能,如訂閱RSS的頻道、讀取RSS的頻道、訂閱RSS的Item、讀取RSS的Item等。在此,筆者定義了類RSSItem和RSSChannel實現(xiàn)上述功能。這兩個類都被定義在命名空間Web2ASPNET2.WebRSS中,,8.6.1 定義RSS的Item,在下述程序代碼中,類RSSItem用來表示RSS的Item。它屬于Web2ASPNET2.WebRSS命名空間。RSSItem類定義了一個字典字段attributes。它是一個集合,用來保存Item
17、的子元素的名稱及其值。另外,該字典在類RSSItem的構(gòu)造函數(shù)中初始化,并通過屬性Attributes公開該字典。,8.6.2 定義RSS的頻道,在下述程序代碼中,類RSSChannel用來表示RSS的頻道(Channel)。它被定義在命名空間Web2ASPNET2.WebRSS中。 注意:類RSSChannel繼承于RSSItem類,并且還定義了保存RSS源的URL的私有字段url。 類RSSChannel也定義了一個字典字段items。它是一個集合,用來保存Channel的子元素(如Item、Name等)的名稱及其值。另外,該字典在類RSSChannel的構(gòu)造函數(shù)中初始化,并通過屬性Ite
18、ms公開該字典。,8.6.3 讀取RSS的Item,在下述程序代碼中,類RSSChannel定義了讀取RSS的Item的私有方法private RSSItem ReadItem(XmlTextReader reader,string name)。該方法讀取Item的每一個子元素的值,并創(chuàng)建一個RSSItem對象最為方法的返回結(jié)果。,8.6.4 讀取RSS頻道,在下述程序代碼中,類RSSChannel定義了讀取RSS頻道的方法ReadChannel()。該方法根據(jù)字段url獲取網(wǎng)站的數(shù)據(jù),并檢索每一個頻道的數(shù)據(jù)。其具體步驟如下: (1)根據(jù)URL創(chuàng)建讀取網(wǎng)頁內(nèi)容的XmlTextReader對象reader。 (2)調(diào)用reader的方法Read()讀取內(nèi)容中的每一個元素。 (3)如果元素的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度飲料產(chǎn)品線上線下融合營銷合同
- 二零二五年度泥工包工合同(古建筑裝飾修復(fù))
- 2025年度法律咨詢服務(wù)企業(yè)員工試用期勞動合同規(guī)范
- 二零二五年度商業(yè)門面轉(zhuǎn)讓與商業(yè)地產(chǎn)租賃合同
- 二零二五年度診所合伙人合作協(xié)議暨醫(yī)療風(fēng)險管理合同
- 2025年度餐飲單位食品安全培訓(xùn)合同
- 二零二五年度綠色農(nóng)業(yè)農(nóng)民勞務(wù)輸出合同
- 2025至2031年中國硅鋼沖片行業(yè)投資前景及策略咨詢研究報告
- 2025至2030年中國鋁制燈飾配件數(shù)據(jù)監(jiān)測研究報告
- 開業(yè)花籃采購合同范本
- 《井中分布式光纖聲波傳感數(shù)據(jù)采集規(guī)程》標(biāo)準(zhǔn)報批稿
- 人音版 音樂 八年級下冊 第一單元 我和你教案
- 教育戲劇在小學(xué)教育中的應(yīng)用研究 論文
- 2024年江蘇經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫及參考答案
- 2024年青島港灣職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫必考題
- python程序設(shè)計-說課
- 標(biāo)識標(biāo)牌制作及安裝項目技術(shù)方案
- 《糖尿病患者血脂管理中國專家共識(2024版)》解讀
- 醫(yī)療器械物價收費(fèi)申請流程
- DB32T4124-2021廢水污染物自動監(jiān)測設(shè)備參數(shù)傳輸技術(shù)規(guī)范
- 保單服務(wù)專員技能提升培訓(xùn)結(jié)課考試附有答案
評論
0/150
提交評論