信道架构把一系列分布式编程技术统一为一个单独的编码模型。这个架构允许服务独立于传输协议和编码协议而创建,因此支持多种通信形式。绑定是支持特殊通信类型的预先设置好的信道栈。WCF提供9种预定义绑定。
这里有一些在WCF中使用信道和绑定的指导原则。
- netTcpBinding 绑定用来跨机器通信的.NET应用程序间。
- netNamedPipeBinding绑定可以用在所有本机的.NET应用程序间的通信。这包括进城间和进程内(也就是说,在应用程序域内和应用程序域间)的通信。
- basicHttpBinding绑定支持基于WS-I 基础协议1.1 的继承Web 服务。这个绑定常用来调用ASP.NET ASMX Web 服务。也可以用来暴露服务给不支持WS-*标准的.NET 2.0 客户端。
- ws2007HttpBinding 和wsHttpBinding绑定用来创建支持WS-*标准的Web 服务。ws2007HttpBinding应该作为WCF中创建Web 服务的默认绑定。它支持最新的消息,安全,可信赖消息和事务的WS-*标准。
- 有三个额外的基于Web服务的绑定:wsDualHttpBinding,wsFederationHttpBinding和 ws2007FederationHttpBinding.如果你需要支持基于HTTP或者集成安全的双工通信,就按照具体需求分别使用这些绑定。 ws2007FederationHttpBinding 绑定与.NET 3.5一起发布并且对WSS SAML Token Profile 1.1 有额外的支持。
- netMsmqBinding绑定用来开发使用微软消息队列(MSMQ)的离线应用。
- msmqIntegrationBinding绑定使用MSMQ与现有的应用程序集成。
- WCF里的信道栈是可组合的并允许创建自定义绑定。自定义绑定可以用来支持不能由预设好的绑定支持的通信需求。
- 如果WCF预设好的绑定满足你的需求那么就使用它们;否则,你可以使用CustomBinding类创建一个自定义绑定。
======
转载自