当服务在WCF中使用双工绑定时,您可以在操作中执行此操作:
OperationContext.Current.GetCallbackChannel<IClientReceiver>()
获取对调用者的引用。那是什么参考?我的意思是,看起来它正在做一些voo-doo魔术。幕后发生了什么让服务将消息发送回客户端?
这对于TCP绑定与双工http绑定有何不同?因为我理解TCP本身可以回调客户端,但http不能,所以它必须在服务器端创建第二个通道才能调用客户端。
答案 0 :(得分:2)
在WSDualHttpBinding
上实际上有两个HTTP连接:一个从客户端到服务器,一个从服务器到客户端。 GetCallbackChannel<T>
将返回对知道如何向客户端发送消息的通道的引用,并且正如您所指出的,它依赖于底层传输。