WCF 分布式开发步步为赢(10):请求应答(Request-Reply)、单向操作(One-Way)、回调操作(Call Back). 所属分类: WCF 分布式开发步步为赢, SOA and EAI WCF 除了支持经典的请求应答(Request-Reply)模式外,还提供了什么操作调用模式,他们有什么不同以及我们如何在开发中使用这些操作调用模式。今天本节文章里会详细介绍。WCF 分布式开发步步为赢(10):请求应答(Request-Reply)、单向操作(One-Way)、回调操作(Call Back).本文结构:【1】请求应答(Request-Reply)、【2】单向操作(One-Way)、【3】回调操作(Call Back)、【4】示例代码分析、【5】总结。最后上传本文的示例代码。 WCF 除了支持经典的请求/应答模式意外,还提供了对单向操作、双向回调操作模式的支持,此外还有流操作(后者与 WSE3.0 提供的优化传输机制类似,我曾经在这个文章里进行过讲解 WSE3.0 构建 Web服务安全(4):MTOM 消息传输优化和文件上传、下载 )。今天我们会介绍几种操作调用模式的概念,区别,实现机制,以及如何在代码中实现他们,最后给出的要注意的细节问题。 【1】请求应答(Request-Reply): 请求应答模式是默认的操作模式。这与经典的 C/S 编程类似,客户端发送请求,阻塞客户端进程,服务端返回操作结果。请求应答模式与绑定对应关系 : 1. 绑定协议名称 支持可靠性 默认可靠性 支持有序传递 请求应答模式 2. BasicHttpBinding No N/A No Yes 3. NetTcpBinding Yes Off Yes Yes 4. NetPeerTcpBinding No N/A No No 5. NetNamedPipeBinding No N/A (On) Yes Yes 6. WSHttpBinding Yes Off Yes Yes 7. WSFederationHttpBinding Yes Off Yes Yes 8. WSDualHttpBinding Yes On Yes Yes 9. NetMsmqBinding No N/A No No 10. MsmqIntegrationBinding No N/A No Yes 除了 NetPeerTcpBinding 和 NetMsmqBinding 绑定,所有的绑定均支持请求-应答操作。 【2】单向操作(One-Way): 【2.1】概念: 简单来说,单向操作没有返回值,客户端只管调用,不管结果。单向操作客户端一旦发出请求,WCF会生成一个请求,不会给客户端返回任何消息。单向操作不同于异步操作,虽然单向操作只是在发出调用的瞬间阻塞客户端,但如果发出多个单向调用,WCF 会将请求调用放入队列,并在某个时候执行。队列存储调用的个数是有限的,一旦发出的调用个数超出了队列存储调用的设置值,则会...