ASP.Net Web API XML序列化ArrayOf

时间:2012-09-04 12:18:19

标签: xml wcf serialization asp.net-web-api

我正在使用ASP.Net Web API(WCF 4.0)方法返回List<WorkItem>

这是以

形式返回带有ArrayOf ...的xml
<ArrayOfworkitem xmlns="http://schemas.datacontract.org/2004/07/AgilePortalServices.DataContracts" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
    <workitem>
        <id>28</id>
        <title>Test</title>
    </workitem>
    <workitem>
        <id>27</id>
        <title>Test Bug</title>
    </workitem>
</ArrayOfworkitem>

但是我想把它作为

返回
<workitems>
    <workitem>
        <id>28</id>
        <title>Test</title>
    </workitem>
    <workitem>
        <id>27</id>
        <title>Test Bug</title>
    </workitem>
</workitems>

我该怎么做?

1 个答案:

答案 0 :(得分:1)

这是因为序列化程序使用的是WCF XML序列化程序,而不是默认的XmlSerializer。

您可以通过设置默认格式化程序来修改它(如果您选择,可以将其替换为第三方)。

var xml = GlobalConfiguration.Configuration.Formatters.XmlFormatter;
xml.UseXmlSerializer = true;

this web-api overview

的更多信息