介紹ASP.NET頁面
本文我們將要創(chuàng)建ASP.NET頁面。假設(shè)你是一個大型新聞網(wǎng)站(如MSNBC.com)的Web開發(fā)者,所有的新聞內(nèi)容都保存在MicrosoftSQLServer2000數(shù)據(jù)庫中。具體地說,這些文章是都保存在一個名為Articles的表中,表中以下字段與我們的程序密切相關(guān):
ArticleID—主鍵,自增長的整型字段,用來唯一標(biāo)識每一篇文章;
◆Title—指定標(biāo)題,字段數(shù)據(jù)類型:varchar(50);
◆Author—指定作者,字段數(shù)據(jù)類型:varchar(50);
◆Description—新聞內(nèi)容描述,字段數(shù)據(jù)類型:varchar(2000);
◆DatePublished—新聞發(fā)布日期,字段數(shù)據(jù)類型:datetime
請注意,Articles表中可能還有其它字段,上面所列的只是我們在創(chuàng)建聚合文件的時候所要用到的字段。而且,這只是一個非常簡單的數(shù)據(jù)模型,在是應(yīng)用的數(shù)據(jù)庫環(huán)境中,你可能會使用更加標(biāo)準(zhǔn)化的數(shù)據(jù)庫模型,比如具備一個單獨的authors(作者)表,有一個建立作者和文章之間多對多關(guān)系的表等等。
下一步,我們將創(chuàng)建一個ASP.NET頁面,用格式化好的RSS2.0XML文件顯示一個最新的新聞列表。在講述如何在ASP.NET頁面中完成這種轉(zhuǎn)換之前,我們要先介紹一下RSS2.0規(guī)范的內(nèi)容。我們應(yīng)該記住,在整個規(guī)范中,RSS是被設(shè)計用來為聚合內(nèi)容提供一個數(shù)據(jù)模型。那么毫無疑問,它會有一系列的XML元素,用來描述Web站點要聚合的內(nèi)容信息,以及一系列用來描述某一特定新聞項的XML元素。最后,不要忘記RSS聚合文件是一個XML格式文件,必須符合XML格式化的準(zhǔn)則,也就是:
所有XML元素必須正確嵌套;
所有的屬性值要用引號包含起來;
< ,>,&,"和''符號要相應(yīng)地替換為< ,>,&,"和';
而且,XML格式是大小寫敏感的,這就意味著,XML元素的起始和終止標(biāo)簽必須匹配,拼寫和大小寫都必須一致。
RSS2.0的根元素是< rss>元素,這個元素可以有一個版本號的屬性。
在< channel>元素里面有三個必需的子元素,用來描述Web站點的信息。這三個元素是:
◆title—定義聚合文件的名稱,一般來說,還會包括Web站點的名稱;
◆link—Web站點的URL;
◆description—Web站點的一段簡短的描述。
除此之外,還有一些可選元素來描述站點信息。這些元素的更多信息請參見RSS2.0規(guī)范。
每一個新聞項目放在一個單獨的< item>元素中。< channel>元素可以有任意數(shù)量的< item>元素。每個< item>元素可以有多種的子元素,唯一的要求是最少必須包含< title>元素和< description>元素其中一個作為子元素。以下列出了一些相關(guān)的< item>子元素:
◆title—新聞項目的標(biāo)題;
◆link—新聞項目的URL;
◆description—新聞項目的大綱;
◆author—新聞項目的作者;
◆pubDate—新聞項目的發(fā)布日期
下面是一個非常簡單的RSS2.0聚合文件。你可以從RSSgeneratedbyRadioUserLand看到其他的RSS2.0文件的例子。
- <rssversionrssversion="2.0">
- <channel>
- <title>LatestDataWebControls.comFAQs</title>
- <link>http://datawebcontrols.com</link>
- <description>
- ThisisthesyndicationfeedfortheFAQs
- atDataWebControls.com
- </description>
- <item>
- <title>WorkingwiththeDataGrid</title>
- <link>http://datawebcontrols.com/faqs/DataGrid.aspx</link>
- <pubDate>Mon,07Jul200321:00:00GMT</pubDate>
- </item>
- <item>
- <title>WorkingwiththeRepeater</title>
- <description>
- ThisarticleexamineshowtoworkwiththeRepeater
- control.
- </description>
- <link>http://datawebcontrols.com/faqs/Repeater.aspx</link>
- <pubDate>Tue08Jul200312:00:00GMT</pubDate>
- </item>
- </channel>
- </rss>
【編輯推薦】