Message::CreateMessage Method (XmlReader^, Int32, MessageVersion^)


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

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

static Message^ CreateMessage(
	XmlReader^ envelopeReader,
	int maxSizeOfHeaders,
	MessageVersion^ version


Type: System.Xml::XmlReader^

The XmlReader 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 MessageVersion object 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