使ASP.NET Web服务输出RSS Feed

时间:2009-04-14 02:52:33

标签: asp.net web-services rss

我一直在编写一些Web服务供几个不同的客户端应用程序使用,我正在尝试编写一个简单输出RSS XML Feed的Web服务方法。

我可以使用XmlTextWriter对象

创建XML

然后我尝试输出到Response(就像我过去在aspx页面上做的那样),但这只适用于返回类型为void(并且似乎仍无法正确输出)

然后我尝试将返回类型设为字符串并使用StringWriter从XmlTextWriter输出xml,然后将输出包装在标记中。

我该怎么做?

3 个答案:

答案 0 :(得分:2)

显然,正常创建WCF服务的接口和其余部分。

使用以下属性标记该类

[ServiceBehavior(InstanceContextMode=InstanceContextMode.Single)]

然后这个功能

public Stream GetRSS()
{
 string output;
 //output = some_text;
 MemoryStream ms = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(output));
 WebOperationContext.Current.OutgoingResponse.ContentType = "text/xml";
 return ms;
}

答案 1 :(得分:0)

我有一些代码,但它不仅适合SO帖子(约1000行)。真的不是那么难;架构很简单,你可以自己做,但你不必:你可以插入几个组件来为你创建xml。

你应该看到这个问题:
ASP.Net RSS feed

答案 2 :(得分:0)

如果必须使用ASMX,则可以返回XmlDocument。根据需要构建feed XML,然后从Web方法返回XmlDocument。