List of Out of the box WCF Bindings (including 3.5) - Note to Self

Following is the list of WCF out-of-the-box bindings, brief information about them (from MSDN) and the link which points to further details. I have ordered them according to the frequency of use in my opinion, YMMV.

BasicHTTPBinding
Represents a binding that a Windows Communication Foundation (WCF) service can use to configure and expose endpoints that are able to communicate with ASMX-based Web services and clients and other services that conform to the WS-I Basic Profile 1.1. The BasicHttpBinding uses HTTP as the transport for sending SOAP 1.1 messages. A service can use this binding to expose endpoints that conform to WS-I BP 1.1, such as those that ASMX clients consume. Similarly, a client can use the BasicHttpBinding to communicate with services exposing endpoints that conform to WS-I BP 1.1, such as ASMX Web services or services configured with the BasicHttpBinding. Security is turned off by default, but can be added setting the mode attribute of the <security> of <basicHttpBinding> child element to a value other than None. It uses a "Text" message encoding and UTF-8 text encoding by default.

webHTTPBinding
A binding used to configure endpoints for Windows Communication Foundation (WCF) Web services that are exposed through HTTP requests instead of SOAP messages.The WCF Web Programming Model allows developers to expose WCF Web services through HTTP requests that use "plain old XML" (POX) style messaging instead of SOAP-based messaging. For clients to communicate with a service using HTTP requests, an endpoint of the service must be configured with the WebHttpBinding that has the WebHttpBehavior attached to it. The WCF Web Programming Model also requires that the individual service operations are annotated with the WebGetAttribute or WebInvokeAttribute attributes. This defines a mapping from a URI and HTTP method to the service operation, as well as the format of the messages used to call the operation and return the results. Support in WCF for syndication and ASP.AJAX integration are both built on top of the WCF Web Programming Model.

wsHttpBinding
Represents an interoperable binding that supports distributed transactions and secure, reliable sessions. The WSHttpBinding is similar to the BasicHttpBinding but provides more Web service features. It uses the HTTP transport and provides message security, as does BasicHttpBinding, but it also provides transactions, reliable messaging, and WS-Addressing, either enabled by default or available through a single control setting.

netTCPBinding
A secure, reliable binding suitable for cross-machine communication. The NetTcpBinding generates a run-time communication stack by default, which uses transport security, TCP for message delivery, and a binary message encoding. This binding is an appropriate Windows Communication Foundation (WCF) system-provided choice for communicating over an Intranet.

BasicHTTPContextBinding
Enables context for the BasicHttpBinding to be exchanged with HTTP cookies as the context exchange mechanism. The BasicHttpContextBinding adds a ContextBindingElement to the stack of BindingElement objects in the system-provided BasicHttpBinding. This enables SOAP headers to be used to exchange context.

NetMsmqBinding
Represents a queued binding that is suitable for cross-machine communication.
The NetMsmqBinding binding provides support for queuing by leveraging Microsoft Message Queuing (MSMQ) as a transport and enables support for loosely coupled applications, failure isolation, load leveling and disconnected operations.

wsDualHttpBinding
A secure and interoperable binding that is designed for use with duplex service contracts that allows both services and clients to send and receive messages.The WSDualHttpBinding provides the same support for Web Service protocols as the WSHttpBinding, but for use with duplex contracts. WSDualHttpBinding only supports SOAP security and requires reliable messaging. This binding requires that the client has a public URI that provides a callback endpoint for the service. This is provided by the ClientBaseAddress. A dual binding exposes the IP address of the client to the service. The client should use security to ensure that it only connects to services it trusts.

netPeerTCPBinding
Provides a secure binding for peer-to-peer network applications.The NetPeerTcpBinding binding provides support for the creation of peer networking applications that use a TCP-level peer-to-peer mesh infrastructure.

netNamedPipeBinding
Provides a secure and reliable binding that is optimized for on-machine communication.
The NetNamedPipeBinding generates a run-time communication stack by default, which uses transport security, named pipes for message delivery, and a binary message encoding. This binding is an appropriate Windows Communication Foundation (WCF) system-provided choice for on-machine communication. It also supports transactions.

MSMQIntegrationBinding
The MsmqIntegrationBinding class maps Microsoft Message Queuing (MSMQ) messages to Windows Communication Foundation (WCF) messages.

netTCPContextBinding
Provides a context-enabled binding for the NetTcpBinding. The NetTcpContextBinding adds a ContextBindingElement to the stack of BindingElement objects in the system-provided NetTcpBinding. This enables SOAP headers to be used to exchange context.

ws2007HttpBinding
Represents an interoperable binding that derives from WSHttpBinding and provides support for the updated versions of the Security, ReliableSession, and TransactionFlow binding elements. The WS2007HttpBinding class adds a system-provided binding similar to WSHttpBinding but uses the Organization for the Advancement of Structured Information Standards (OASIS) standard versions of the ReliableSession, Security, and TransactionFlow protocols. No changes to the object model or default settings are required when using this binding.

wsHttpContextBinding
The WSHttpContextBinding adds a ContextBindingElement to the stack of BindingElement objects in the system-provided WsHttpBinding. This enables SOAP headers to be used to exchange context when HTTP cookies are not enabled.

wsFederationHttpBinding
A secure and interoperable binding that supports federated security.

Share

One thought on “List of Out of the box WCF Bindings (including 3.5) - Note to Self

Comments are closed.