1

我正在使用 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>

我该怎么做呢?

4

1 回答 1

1

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

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

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

此 web-api 概述中的更多信息

于 2012-09-04T12:22:39.677 回答