如何在 ASP.Net 中创建 rss 提要?有内置的东西来支持它吗?如果没有,有哪些第三方工具可用?

我正在考虑 Web 表单,而不是 MVC,但我认为由于这不是传统页面,因此差异可能很小。

有帮助吗?

解决方案

对于内置的,没有什么可以阻止您使用 XmlDocument 或 XDocument (3.5) 来构建 RSS 所需的 XML。但这是比其价值更多的工作。

我用 阿尔戈蒂克联合框架 并通过通用处理程序 (.ashx) 提供提要,内容类型设置为 text/xml。

RSS工具包 也不错。如果您喜欢这类事情,它会附带一个 RSSDataSource 控件。它还包括一个控件,可以自动插入浏览器中自动发现提要所需的元标记。然而,我发现用于创建提要的构建提供程序有点混乱。

其他提示

.NET Framework 3.5 添加了 SyndicateFeed 类,允许您创建和/或使用 Atom 1.0 和 RSS 2.0 格式的提要。

MSDN 上的 SyndicateFeeds 类

这是由 Microsoft 开发人员创建的 RSS 框架: ASP.NET RSS 工具包

使用可用于生成实际 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();

}

希望有帮助。

你可以看看Argotic。这是一个非常酷的框架。

http://www.codeplex.com/Argotic

创建 HTTP 处理程序以创建 RSS 提要

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top