更改根节点(响应)wcf服务

时间:2017-09-15 09:14:43

标签: c# asp.net-mvc wcf service response

我创建了一个简单的wcf服务,其默认示例为vs2013。我需要在GetData

中更改响应GetDataResponse的根

我该怎么做?

  
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
  <s:Header />
  <s:Body>
    <**GetDataResponse** xmlns="http://tempuri.org/">
      <GetDataResult>You entered: 0</GetDataResult>
    </GetDataResponse>
  </s:Body>
</s:Envelope>

1 个答案:

答案 0 :(得分:0)

您需要使用Messagecontract来更改(控制)SOAP请求/响应。例如:创建一个新的响应类并使用MessageContract进行装饰,如下所示。

[MessageContract(IsWrapped=true, 
                     WrapperName="GetDataResponse", 
                     WrapperNamespace="http://MyCompany.com/Response")]
    public class GetDataInfo
    {
    }

调用WCF服务时,将上述类用作resposne对象。 有关详细信息,请参阅http://csharp-video-tutorials.blogspot.in/2013/11/part-10-message-contract-in-wcf_28.html