MessageEncoder::ReadMessage Method (ArraySegment<Byte>, BufferManager^, String^)
.NET Framework (current version)
When overridden in a derived class, reads a message from a specified stream.
Assembly: System.ServiceModel (in System.ServiceModel.dll)
public: virtual Message^ ReadMessage( ArraySegment<unsigned char> buffer, BufferManager^ bufferManager, String^ contentType ) abstract
Parameters
- buffer
-
Type:
System::ArraySegment<Byte>
A ArraySegment<T> of type Byte that provides the buffer from which the message is deserialized.
- bufferManager
-
Type:
System.ServiceModel.Channels::BufferManager^
The BufferManager that manages the buffer from which the message is deserialized.
- contentType
-
Type:
System::String^
The Multipurpose Internet Mail Extensions (MIME) message-level content-type.
Return Value
Type: System.ServiceModel.Channels::Message^The Message that is read from the stream specified.
The following code example shows how to implement the ReadMessage(ArraySegment<Byte>, BufferManager^, String^) method.
public override Message ReadMessage(ArraySegment<byte> buffer, BufferManager bufferManager, string contentType) { byte[] msgContents = new byte[buffer.Count]; Array.Copy(buffer.Array, buffer.Offset, msgContents, 0, msgContents.Length); bufferManager.ReturnBuffer(buffer.Array); MemoryStream stream = new MemoryStream(msgContents); return ReadMessage(stream, int.MaxValue); }
Universal Windows Platform
Available since 8
.NET Framework
Available since 3.0
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Available since 8
.NET Framework
Available since 3.0
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Show: