gpt4 book ai didi

asp.net - 如何从 ASP.NET 5 MVC 6 Controller 操作返回 XML

转载 作者:行者123 更新时间:2023-12-01 12:32:04 25 4
gpt4 key购买 nike

如何从 Controller 操作返回 XML?即使我添加 header Accept: application/xml 它也会返回一个 JSON 对象。

MVC 5 中的 WebApi Controller 支持这一点。我必须做什么才能让它在 MVC 6 中工作?

最佳答案

Microsoft 删除了 XML 格式化程序,因此 ASP.NET MVC 6 默认仅返回 JSON。如果您想再次添加对 XML 的支持,请调用 AddXmlSerializerFormattersservices.AddMvc() 之后在你的Startup.ConfigureServices()方法:

public void ConfigureServices(IServiceCollection services)
{
services.AddMvc()
.AddXmlSerializerFormatters();
}

要使用它,您必须添加 "Microsoft.AspNet.Mvc.Formatters.Xml": "6.0.0-rc1-final"作为依赖项(在 project.json 下的 dependencies 中)。


做同样事情的一种稍微乏味的方法是将 Xml 格式化程序直接添加到 OutputFormatters 集合:

public void ConfigureServices(IServiceCollection services)
{
services.AddMvc(options =>
{
options.OutputFormatters.Add(new XmlSerializerOutputFormatter());
});
}

XmlSerializerOutputFormatter在命名空间 Microsoft.AspNet.Mvc.Formatters 中.

关于asp.net - 如何从 ASP.NET 5 MVC 6 Controller 操作返回 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32354449/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com