Messaging Protocols
Regardless of the transport protocol (TCP, named pipes, MSMQ, or HTTP), messages are
represented by the runtime in the same way, as a Message
type from the System.ServiceModel.Channels
namespace. The
Message
type is essentially a runtime representation of
a SOAP message. When serialized, the wire format of the message complies with SOAP 1.1 or
1.2 depending on the binding configuration for the endpoint.
The Message
type also holds addressing headers,
consistent with the WS-Addressing standard. These are serialized with the message if the
binding supports addressing. When the service model processes messages, other standards may
also come into play to add features such as security and reliability. The service model
supplies channels for many of the emerging protocols, usually referred to as WS* (pronounced
WS-Star). Through bindings (discussed in Chapter 3), you can enable
features that use these protocols. In short, WCF relies on standards to serialize messages;
here I’ll provide you with an overview in this chapter of the core standards that will be
elaborated on throughout this book.
Tip
Keep in mind that you will rarely need to worry about the details of messaging protocols because WCF implements them in the plumbing of the service model.
SOAP
SOAP was introduced in 1999—a short specification that finally made it possible to standardize how messages are exchanged on the wire, using XML at its core to support interoperability. A SOAP message contains message headers ...
Get Learning WCF now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.