近日,在调用一个OneWay 的WebService服务是,抛出了异常:单向操作返回具有 Action='' 的非 null 消息
大概了解了一下原因:OneWay的方式并不是没有信息返回,而是服务端返回内容了,但是消息体是空的。导致异常;
但是服务端能够正常的接收到信息,就是返回的时候,在调用端触发了异常。
网上有说:将编码设置为忽略空消息即可解决问题,但是不知道怎么设置。
现贴出另外一个解决异常的办法:
在引用的WebService服务类里面,可以看到接口方法有定义特性:
[System.ServiceModel.OperationContractAttribute(IsOneWay=true)]
将特性更改为:
[System.ServiceModel.OperationContractAttribute(IsOneWay=fasle)]
这样,在调用服务时,就不会抛异常,服务端也能正常接收数据。