需要Web api为一个控制器返回XML,为其他控制器返回JSON

时间:2016-07-15 06:52:21

标签: c# asp.net json xml asp.net-web-api

嗨我们有一个正在运行的web api应用程序,它返回json用于Web应用程序。 现在我们需要将这个相同的应用程序与另一个应用程序集成在一个新模块中,该应用程序只能接收或传递xml。所以现在我们需要为我们当前正在运行的Web应用程序返回json,并为该外部应用程序返回xml。

我们是否可以在不改变现有应用程序的情况下从一个控制器返回xml响应。这样它就不会影响我们现有的网络应用程序。

我有搜索并发现此解决方案How to force ASP.NET Web API to return JSON or XML data based on my input?并且正常工作,但这需要每次都传递一个查询字符串。我们无法修改现有的应用。

    GlobalConfiguration.Configuration.Formatters.JsonFormatter.MediaTypeMappings.Add(
    new QueryStringMapping("type", "json", new MediaTypeHeaderValue("application/json")));

    GlobalConfiguration.Configuration.Formatters.XmlFormatter.MediaTypeMappings.Add(
    new QueryStringMapping("type", "xml", new MediaTypeHeaderValue("application/xml")));

请为此提出一些解决方案。另外,请建议如何从外部应用程序接收xml格式的数据到web api。

提前致谢。

0 个答案:

没有答案