2010-11-22 44 views
-1

我的網站上可以使用哪些技術來引入每日新鮮更新的內容,如來自着名新聞網站的新聞RSS提要等等?將新鮮更新的內容帶到網站

+1

我不認爲c#.net和asp.net標記與內容有任何關聯。他們可能會改變你如何實現它,但最終的問題是關於要添加的功能而不是如何編碼它們。 – Mauro 2010-11-22 08:33:42

+0

請你可以推薦其他標籤,我可以把,,,以得到我的問題的答案... – 2010-11-22 08:42:59

+0

我需要更多的技術,除了RSS – 2010-11-22 10:19:05

回答

1

[更新 - 一般回答]

正如你已經提到,RSS源是獲得更新的新聞的最佳途徑。它們很容易消耗,併爲基於物品的數據提供標準接口。例如CNN的頂級倉庫號碼爲http://rss.cnn.com/rss/cnn_topstories.rss。當使用Firefox瀏覽新聞網站時,如果網站擁有RSS訂閱源,它將在地址欄中顯示一個RSS圖標,這使得更容易發現訂閱源。


由於您將此標記爲C#和ASP.Net,我將根據編碼來回答它。

許多新聞網站提供RSS源,這些可以在.NET 3.5中引入的SyndicationFeed類中使用。 SyndicationFeed類支持Atom 1.0和RSS 2.0。

在我看來,消費Feed最重要的部分就是緩存它們,這樣就不會爲網頁上的每次點擊下載Feed。從哪裏獲得飼料取決於您想要的主題以及您所處的世界。

下面是一個簡短的例子。

// Check cache for data 
IEnumerable<SyndicationItem> items = Cache["NewsFeed"] as IEnumerable<SyndicationItem>; 
if (items == null) 
{ 
    // Not in cache, go get it! 
    try 
    { 
     SyndicationFeed news = SyndicationFeed.Load(XmlReader.Create("http://www.news.corp/feed.xml")); 
     items = news.Items; 
    } 
    catch 
    { 
     items = new List<SyndicationItem>(); 
    } 
    // Add the items to the cache 
    Cache.Insert("NewsFeed", items, null, DateTime.Now.AddHours(1.0), TimeSpan.Zero); 
} 
// Bind your data somewhere 
+0

非常感謝Mikael斯文森,,雖然這不是我想要的..我的標籤C#和ASP.net,以確保這是asp.net網站,但問題是如此廣泛。謝謝 – 2010-11-22 07:54:05

+1

在頂部添加了一個通用commet。 – 2010-11-22 08:52:06

+0

感謝Mikael有更多的功能添加? – 2010-11-22 08:55:28