Ответ 1
Попробуйте вместо этого использовать XmlSeriazlier:
config.Formatters.XmlFormatter.UseXmlSerializer = true;
Затем попробуйте определить класс, полученный из коллекции Product, и используйте [XmlRoot ( "Продукты" )], чтобы переименовать имя элемента из "ArrayOfProduct" в "Продукты".
Например, вместо использования List используйте класс Products:
[XmlRoot("Products")]
public class Products : List<Product> { }
public class Product
{
public int Id { get; set; }
public string Name { get; set; }
public string Category { get; set; }
public double Price { get; set; }
}
Действие ApiController:
public Products Get()
{
return new Products()
{
new Product()
{
Id = 1,
Name = "Tomato Soup",
Category = "Groceries",
Price = 1
}
};
}