使用ASP.NET Web API输出Atom提要

Ber*_*nig 0 asp.net-web-api

在我的ASP.NET Web API项目中,我有一些标准的Edit API调用,其中XML或JSON输出或者调用者想要的任何内容都可以.但是有些调用应该返回ATOM提要.

现在我发现在这篇文章中我可以通过自定义MediaTypeFormatter实现ATOM或RSS输出:如何使用ASP.NET Web API生成ATOM和RSS2源?

但它实际上并不是我想要的,因为仍然由调用者通过HTTP Accept-header请求这样的输出.我想在这里专门返回ATOM,没有JSON,没有(序列化对象)XML.

是否可以使用Web API执行此操作?或者为这些调用使用标准Web控制器并仅将所有其他API调用实现为ApiControllers会更好吗?

谢谢你的帮助!

Rag*_*nti 7

您也可以使用Web API.示例操作如下.

public HttpResponseMessage GetFeed()
{
    return Request.CreateResponse(HttpStatusCode.OK, feedInstance, "application/atom+xml");
}


 public HttpResponseMessage GetFeed()
 {
    return Request.CreateResponse(HttpStatusCode.OK, feedInstance, feedFormatter, "application/atom+xml");
 }
Run Code Online (Sandbox Code Playgroud)

您可以使用其中任何一种.