【发布时间】:2018-03-09 15:13:21
【问题描述】:
我有一个简单的 Web API,它将返回 json 或 xml,具体取决于请求中的接受标头。
(应用程序/json 或应用程序/xml)
这是我返回的数据类的 sn-p:
public int ID { get; set; }
public string ProductTitle { get; set; }
public string Artist { get; set; }
public string EAN_Code { get; set; }
对于 json 响应,名称/值对按照它们在类中声明的顺序返回:
[
{
"ID": 1,
"ProductTitle": "Product 1",
"Artist": "Artist 1",
"EAN_Code": "1234567890123",
但 xml 响应按字母顺序重新排列元素:
<Artist>Artist 1</Artist>
<EAN_Code>1234567890123</EAN_Code>
<ID>1</ID>
<ProductTitle>Product 1</ProductTitle>
我可以设置一些属性/配置来阻止重新排列元素吗?
目前我只有:
services.AddMvc()
.AddMvcOptions(o => o.OutputFormatters.Add(
new XmlDataContractSerializerOutputFormatter()))
.AddJsonOptions(o =>
{
if (o.SerializerSettings.ContractResolver != null)
{
var castedResolver = o.SerializerSettings.ContractResolver
as DefaultContractResolver;
castedResolver.NamingStrategy = null;
}
})
【问题讨论】:
标签: xml asp.net-core-mvc httpresponse asp.net-core-webapi