开发者

WCF REST: remove prefix "ArrayOf" for wcf method response

开发者 https://www.devze.com 2023-02-02 02:41 出处:网络
Here is one of the methods from my wcf rest s开发者_如何学Cervice: [OperationContract] [WebInvoke(UriTemplate = \"getInvoices\", Method = \"POST\", RequestFormat = WebMessageFormat.Xml, ResponseForma

Here is one of the methods from my wcf rest s开发者_如何学Cervice:

    [OperationContract]
    [WebInvoke(UriTemplate = "getInvoices", Method = "POST", RequestFormat = WebMessageFormat.Xml, ResponseFormat = WebMessageFormat.Xml)]
List<InvoiceRet> GetInvoices(GetInvoices getInvoices);

And it returns response in the next format:

<ArrayOfInvoiceRet>
  <InvoiceRet></InvoiceRet>
  <InvoiceRet></InvoiceRet>
  ...
  <InvoiceRet></InvoiceRet>
</ArrayOfInvoiceRet>

How to modify method to return the next response

<ListInvoice>
  <InvoiceRet></InvoiceRet>
  <InvoiceRet></InvoiceRet>
  ...
  <InvoiceRet></InvoiceRet>
</ListInvoice>


You will need to implement custom collection derived from List<InvoiceRet> and mark it with CollectionDataContractAttribute:

[CollectionDataContract]
public class ListInvoice : List<InvoiceRet>
{ }

Use this collection as return type from your operation. Here is full description of using collections in data contracts.

0

精彩评论

暂无评论...
验证码 换一张
取 消