我们的客户希望使用以下 soap 消息来调用我的 WCF 服务:
<soapenv:Envelope .....>
<soapenv:Header />
<soapenv:Body>
<st:myExtraParam>str ex</st:myExtraParam>
<st:MyMethod>
<st:myfuncParam>func str</st:myfuncParam>
</st:MyMethod>
....
....
</soapenv:Body>
</soapenv:Envelope>
我创建了如下所示的服务合同:
[ServiceContract]
public interface IMyService
{
[OperationContractAttribute]
public ResponseObj MyMethod(string myfuncParam)
}
现在,如何启用功能标签上方<st:myExtraParam>param str</st:myExtraParam>
参数?
我的第一直觉是说,SOAP Body 元素的直接子元素不能超过一个。但是 SOAP 规范说这样做是可以的。
不过,我不认为基于 [ServiceContract] 的 WCF 可以做到这一点。