Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从ASP.NET核心Web API方法返回完整的XML响应_C#_Xml_Api_Asp.net Core_Model View Controller - Fatal编程技术网

C# 从ASP.NET核心Web API方法返回完整的XML响应

C# 从ASP.NET核心Web API方法返回完整的XML响应,c#,xml,api,asp.net-core,model-view-controller,C#,Xml,Api,Asp.net Core,Model View Controller,我正在利用客户关于web服务的请求接近ASP.NET核心。 该请求是一个web方法,返回XML格式的数据,如下所示: <?xml version="1.0" encoding="UTF-8"?> <Person> <Name>John</Name> <Surname>Doe</Surname> . . . </Person> 问题是,当我调用应该返回数据的方法时,我没有XML声明头,这是客户出于某种

我正在利用客户关于web服务的请求接近ASP.NET核心。 该请求是一个web方法,返回
XML
格式的数据,如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<Person>
  <Name>John</Name>
  <Surname>Doe</Surname>
  . . .
</Person>
问题是,当我调用应该返回数据的方法时,我没有XML声明头,这是客户出于某种原因需要的:

<?xml version="1.0" encoding="UTF-8"?>
这里是类

public class Person
{
    public string Name { get; set; }

    public string Surname { get; set; }
}
我做了很多研究,但发现的一切对我毫无帮助。我希望使用框架的功能序列化我的类,而不是一个节点一个节点地构建XML结构,因此我希望在服务中的一些设置允许我这样做

如果需要,可以对
GetPerson
方法进行任何更改,这只是一个非常简单的测试


提前感谢您的帮助

您需要如下配置XML输出格式化程序:

<?xml version="1.0" encoding="UTF-8"?>
<Person>
  <Name>John</Name>
  <Surname>Doe</Surname>
  . . .
</Person>
public void配置服务(IServiceCollection服务)
{
services.AddControllers();
services.AddMvc(选项=>
{
options.Filters.Add(新产品属性(“text/xml”);
options.OutputFormatters.Add(新的XmlSerializerOutputFormatter(新的XmlWriterSettings
{
省略XMLDeclaration=false
}));
}).AddXmlSerializerFormatters();
}
样本输出:


价值1
价值2

您需要如下配置XML输出格式化程序:

<?xml version="1.0" encoding="UTF-8"?>
<Person>
  <Name>John</Name>
  <Surname>Doe</Surname>
  . . .
</Person>
public void配置服务(IServiceCollection服务)
{
services.AddControllers();
services.AddMvc(选项=>
{
options.Filters.Add(新产品属性(“text/xml”);
options.OutputFormatters.Add(新的XmlSerializerOutputFormatter(新的XmlWriterSettings
{
省略XMLDeclaration=false
}));
}).AddXmlSerializerFormatters();
}
样本输出:


价值1
价值2

HA!我知道在MVM选项中我可以做些什么,但我就是找不到。。。我试过了,它确实有效,非常感谢!哈我知道在MVM选项中我可以做些什么,但我就是找不到。。。我试过了,它确实有效,非常感谢!
public class Person
{
    public string Name { get; set; }

    public string Surname { get; set; }
}