2010-10-29 36 views
3

我使用WCF和netmsmqbinding和我收到以下错误消息:为什么我的netmsmqbinding无法做到双向绑定?

合同需要双向(或请求 - 应答或双面),但结合“NetMsmqBinding”不支持或不正确配置以支持它。为什么?

我的环境是window 2003服务器。 wcf服务作为窗口服务托管。预先感谢您的帮助。

回答

0

您只能在NetMsmqBinding中使用OneWay操作。您需要将OperationContract属性的IsOneWay属性设置为true。

说明here

所有服务操作必须是单向的,因为默认排队 在WCF绑定不支持使用队列全双工通信。双向通信示例(双向通信)说明 如何使用两个单向合约来实现使用 队列的双工通信。

4

有关WCF中排队绑定的注意事项包括所有服务操作都必须是单向的,因为WCF中的默认排队绑定不支持使用队列的双工通信。

要没有此错误,您需要更改OperationContract属性。示例如下:

[OperationContract(IsOneWay = true)] 
void YourMethod(YourClass objectHere) 

如果您需要双向操作,则需要使用不同的绑定。

相关问题