可以通过以下方式修复这个问题:
public IHttpActionResult GetXmlData()
{
//some data to be converted to xml
var data = new List
{
new SomeModel{ Id = 1, Name = "One" },
new SomeModel{ Id = 2, Name = "Two" },
new SomeModel{ Id = 3, Name = "Three" }
};
//convert data to xml
var serializer = new XmlSerializer(data.GetType());
var stringWriter = new StringWriter();
serializer.Serialize(stringWriter, data);
var xml = stringWriter.ToString();
//return xml data
return Ok(xml);
}
config.Formatters.XmlFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/xml"));
Accept: application/xml
通过这三个步骤中的一个或多个,你就可以解决API返回XML格式不正确的问题。