2010-11-22 46 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