MessageVersion Class
Collapse the table of content
Expand the table of content

MessageVersion Class


Specifies the versions of SOAP and WS-Addressing associated with a message and its exchange.

Namespace:   System.ServiceModel.Channels
Assembly:  System.ServiceModel (in System.ServiceModel.dll)


public sealed class MessageVersion


Gets or sets the version of WS-Addressing that is associated with the current message version.


Gets the default message version used by Windows Communication Foundation (WCF).


Gets the SOAP version associated with the current message version.


Gets the message version that does not use SOAP or WS-Addressing.


Gets the message version using SOAP 1.1.


Gets the message version using WS-Addressing 1.0 and SOAP 1.1.


Gets the message version by using WS-Addressing submitted 10 August 2004 and SOAP 1.1.


Gets the message version using SOAP 1.2.


Gets the message version using WS-Addressing 1.0 and SOAP 1.2.


Gets the message version using WS-Addressing submitted August 2004 and SOAP 1.2.


Creates a message version object by using WS-Addressing 1.0 and with a specified SOAP version.

System_CAPS_pubmethodSystem_CAPS_staticCreateVersion(EnvelopeVersion, AddressingVersion)

Creates a message version object with specified SOAP and WS-Addressing versions.


Returns a value that indicates whether the current message version is equal to a specified object.(Overrides Object.Equals(Object).)


Gets a hash code for the current message version.(Overrides Object.GetHashCode().)


Gets the Type of the current instance.(Inherited from Object.)


Returns the string representation of the current message version.(Overrides Object.ToString().)

The MessageVersion contains the versioning information both about the SOAP envelope and the addressing protocol that is used by a message. An instance of Message is bound upon creation to a specific MessageVersion by passing the version as a parameter into one of the CreateMessage overloads.

All the static "get" properties in this class, such as Soap11WSAddressing10 and Soap12 have enumeration-like semantics. They provide an enumeration of the possible message versions supported by the Windows Communication Foundation (WCF) runtime. A message has an envelope structure and an addressing structure. MessageVersion is just a shortcut for supplying {EnvelopeVersion, AddressingVersion} together.

There are currently two SOAP envelope versions available: SOAP 1.1 and SOAP 1.2. These versions of SOAP are represented by EnvelopeVersion and are returned by the Soap11 and Soap12 properties. The version of SOAP associated with the MessageVersion can be recovered by using the Envelope property. For more information, see the schema for SOAP 1.1 and SOAP 1.2.

There are currently two versions of WS-Addressing available. The one submitted on 10 August 2004 and the one specified in the WS-Addressing 1.0 protocol. The address version used by the current message version can be recovered using the Addressing property. These versions of WS-Addressing are represented by AddressingVersion and are returned by the WSAddressingAugust2004 and WSAddressing10 properties. The WS-Addressing August 2004 is retained as a legacy value. The 10 August 2004 W3C Member Submission for WS-Addressing is available at Web Services Addressing (WS-Addressing). The 17 August 2005 W3C Candidate Recommendation for WS-Addressing 1.0 - Core is available at Web Services Addressing 1.0 - Core.

None provides support for using "plain old XML" (POX)-style messaging. Enabling basic POX messaging is now a matter of setting up an HTTP binding on your service with a text encoder that uses None.

Message version objects can be created using specified versions of WS-Addressing and SOAP using one of the CreateVersion overloads.

Universal Windows Platform
Available since 4.5
.NET Framework
Available since 3.0
Portable Class Library
Supported in: portable .NET platforms
Available since 2.0
Windows Phone Silverlight
Available since 7.0

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top
© 2015 Microsoft