2008-09-11 198 views
16

如何创建在ASP.Net一个RSS feed?是否有任何内置的支持它?如果没有,可以使用哪些第三方工具?ASP.Net RSS订阅

我想web表单,没有MVC,但我想,因为这不是一个传统的页面的差异可能是最小的。

+0

那么,有多少重复的帖子你什么时候你张贴了这个创造? :) – 2008-09-11 18:34:24

回答

6

对于内置的,没有什么使用XmlDocument的或的XDocument(3.5)建立了RSS所需的XML阻止你。虽然它的价值超过了它的价值。

我使用Argotic Syndication Framework,并设置为text/xml内容类型服务通过通用处理程序(ashx的)的饲料。

RSSToolkit也不错。它带有一个RSSDataSource控件,如果你遇到这种情况。它还包含一个控件,可自动在浏览器中插入Feed自动发现所需的元标记。但是,我发现创建提要的构建提供程序是一个有点kludgey。

3

使用可产生实际的RSS的图书馆之一。例如:http://www.rssdotnet.com/

如果你在底部检查代码示例页面: http://www.rssdotnet.com/documents/code_examples.html 你会发现代码中的ASP.net页清除内容类型和输出的RSS。

东西线沿线的(未测试,没有编译,刚刚输入):

public void PageLoad() 
{ 

// create channel 
RssChannel _soChannel = new RssChannel(); 

// create item 
RssItem _soItem = new RssItem(); 
_soItem.Title = "Answer"; 
_soItem.Description = "Example"; 
_soItem.PubDate = DateTime.Now.ToUniversalTime(); 

// add to channel 
_soChannel.Items.Add(_soItem.); 

// set channel props 
_soChannel.Title = "Stack Overflow"; 
_soChannel.Description = "Great site.. jada jada jada"; 
_soChannel.LastBuildDate = DateTime.Now.ToUniversalTime(); 

// change type and send to output 
RssFeed _f = new RssFeed(); 
_f.Channels.Add(channel); 
Response.ContentType = "text/xml"; 
_f.Write(Response.OutputStream); 
Response.End(); 

} 

希望有所帮助。

11

在.NET Framework 3.5添加了一个SyndicationFeed类,其允许用户创建和/或消耗的Atom 1.0和2.0 RSS格式的饲料。

SyndicationFeeds Class on MSDN

-1

创建一个HTTP处理程序创建一个RSS源