Message.CreateMessage Method (XmlDictionaryReader, Int32, MessageVersion)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Creates a message using the specified reader, action and version.

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

public static Message CreateMessage(
	XmlDictionaryReader envelopeReader,
	int maxSizeOfHeaders,
	MessageVersion version


Type: System.Xml.XmlDictionaryReader

The XmlDictionaryReader object to be used for reading the SOAP message.

Type: System.Int32

The maximum size in bytes of a header.

Type: System.ServiceModel.Channels.MessageVersion

A valid MessageVersion value that specifies the SOAP version to use for the message.

Return Value

Type: System.ServiceModel.Channels.Message

A Message object for the message created.

Exception Condition

envelopeReader or version is null.

Message takes ownership of envelopeReader.

This method reads the envelope, buffers all the headers into the header collection, and reads up to but not including the Body start tag, and returns the message. If the method call throws an exception, it closes the reader.

The body of the returned message can then be either read or written.

The message body can be read using the GetBody methods on the returned message. The returned object encapsulates all the child elements within the Body element. The message body can be written using WriteBody or WriteMessage. Once written, it cannot be read.

Closing the message closes the underlying envelope reader.

Universal Windows Platform
Available since 8
.NET Framework
Available since 3.0
Portable Class Library
Supported in: portable .NET platforms
Available since 4.0
Return to top