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

これは、既定の XmlSerializer ではなく、WCF XML シリアライザーを使用するシリアライザーが原因です。

これは、デフォルトのフォーマッターを設定することで変更できます (必要に応じて、これをサードパーティに置き換えることができます)。

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

詳細については、この web-api の概要を参照してください

于 2012-09-04T12:22:39.677 に答える