我该如何从控制器操作返回XML?即使我添加了头Accept:application/xml
,它仍然返回JSON对象。
MVC 5中的WebApi控制器支持此功能。在MVC 6中要使其工作,我需要做什么?
我该如何从控制器操作返回XML?即使我添加了头Accept:application/xml
,它仍然返回JSON对象。
MVC 5中的WebApi控制器支持此功能。在MVC 6中要使其工作,我需要做什么?
微软移除了XML格式化程序,因此ASP.NET MVC 6默认仅返回JSON。如果您想再次添加对XML的支持,请在Startup.ConfigureServices()
方法中调用services.AddMvc()
后调用AddXmlSerializerFormatters
:
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc()
.AddXmlSerializerFormatters();
}
"Microsoft.AspNet.Mvc.Formatters.Xml": "6.0.0-rc1-final"
添加为依赖项(在dependencies
下的project.json
中)。
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc(options =>
{
options.OutputFormatters.Add(new XmlSerializerOutputFormatter());
});
}
XmlSerializerOutputFormatter
位于命名空间Microsoft.AspNet.Mvc.Formatters
中。