WCF Bindings describes how all the client can communicate with WCF service. WCF supports various types of binding.
What are Different Bindings Supported by WCF ?
All WCF Bindings are explained below,
Basic http binding is mainly meant for backward compatibility so that older older .NET version applications such as asmx web services can consume this binding based service. BasicHttpBinging no security as such by default.That means data is sent as plain text over http. Basic Http Binding not support WS-* specifications and hence this binding is not secure.No transaction support and not suitable for reliable messaging.Message transport is SOAP 1.1 based.
WsHttpBinding uses SOAP 1.2 version and implements WS-* specifications.Hence this binding has support of security (data transfer in secure encrypted manner,no plain text transport),reliable messaging and also transaction support..NET versions prior to 3.0 won’t be able to consume wshttpbinding based services since older versions cannot understand WS-* specifications.
WsDualHttpBinding is similar to WsHttpBinding with an added support of duplex communication mode. So this binding appropriate for duplex service implementation over http protocol. Duplex services use duplex message pattern to have a two way communication between service and client through callback mechanism.
Federated security permits association across multiple systems, networks, and organizations in different trust realms by a clean separation of the service a client is accessing and the associated authentication and authorization mechanisms. By means of WSFederationHttpBinding , WCF supports in building and deploying distributed systems that can work with federated security.
wsFederationHttpBinding binding also implements WS-* specifications and hence provides allows to implement a secure, reliable, and interoperable service. HTTP protocol is used for message transport.
A binding to communicate directly with MSMQ applications. smqIntegrationBinding is for queued communication using MSMQ transport.This binding is also secure & reliable.Allows enables for disconnected operations, failure isolation and load leveling.
If you have an application which is writing to Queue and want the WCF service to pick messages from the Queue this binding is appropriate.
Communication between WCF applications by using queuing. Supports transactions
This binding is appropriate for communication between WCF services and WCF client on the same machine or for communication between two WCF services running on the same machine. It uses NamedPipe protocol. NetNamedPipeBinding have Support for duplex communication mode and also transactions support. Secure,reliable and transaction supported.
This binding is to address peer-to-peer computing using WCF services.There is Supports for duplex mode of communication.
This binding sends SOAP 1.2 messages, provides binary encoding and optimized communication between WCF services and WCF clients on Windows network. This binding is the fastest binding amongst all WCF binding options between different nodes in the TCP network. Unlike http bindings, the TCP binding does not offer interoperability but is highly optimized for .Net 3.0 and above clients. Thus, in .Net version 3.0 and above, providing an endpoint with netTcpBinding is an easy option to development of distributed systems and can replace COM+ and .Net Remoting model.
Hope this article helped you to get an idea of WCF Bindings.
You may be interested in article What Is Windows Communication Foundation (WCF)?