In my ongoing quest to produce the simplest table possible summarizing the key differences between the various Windows Communication Foundation (WCF) built-in bindings, I came up with the following:
|
Binding Class Name |
Transport |
Message Encoding |
Message Version |
Security Mode |
RM |
Tx Flow* |
|
BasicHttpBinding |
HTTP |
Text |
SOAP 1.1 |
None |
X |
X |
|
WSHttpBinding |
HTTP |
Text |
SOAP 1.2
WS-A 1.0 |
Message |
Disabled |
WS-AT |
|
WSDualHttpBinding |
HTTP |
Text |
SOAP 1.2
WS-A 1.0 |
Message |
Enabled |
WS-AT |
|
WSFederationHttpBinding |
HTTP |
Text |
SOAP 1.2
WS-A 1.0 |
Message |
Disabled |
WS-AT |
|
NetTcpBinding |
TCP |
Binary |
SOAP 1.2 |
Transport |
Disabled |
OleTx |
|
NetPeerTcpBinding |
P2P |
Binary |
SOAP 1.2 |
Transport |
X |
X |
|
NetNamedPipesBinding |
Named Pipes |
Binary |
SOAP 1.2 |
Transport |
X |
OleTx |
|
NetMsmqBinding |
MSMQ |
Binary |
SOAP 1.2 |
Message |
X |
X |
|
MsmqIntegrationBinding |
MSMQ |
X** |
X |
Transport |
X |
X |
|
CustomBinding |
You decide |
You decide |
You decide |
You decide |
You decide |
You decide |
Notes: X = Not Supported, WS-A = WS-Addressing, WS-AT = WS-AtomicTransaction, OleTx = OleTransactions
* Transaction flow is always disabled by default, but when you enable it, these are the default tx protocols
* This binding doesn’t use a WCF message encoding – instead it lets you choose a pre-WCF serialization format
Although some of these values can be configured differently on certain bindings, the table shows the defaults in each area. I'm pretty happy with this one.
Posted
Mar 22 2007, 03:17 PM
by
Aaron Skonnard