MessageEncoder.ReadMessage Метод

Определение

При переопределении в производном классе считывает сообщение из указанного потока.

Перегрузки

Имя Описание
ReadMessage(Stream, Int32, String)

При переопределении в производном классе считывает сообщение из указанного потока.

ReadMessage(ArraySegment<Byte>, BufferManager, String)

При переопределении в производном классе считывает сообщение из указанного потока.

ReadMessage(Stream, Int32)

При переопределении в производном классе считывает сообщение из указанного потока.

ReadMessage(ArraySegment<Byte>, BufferManager)

При переопределении в производном классе считывает сообщение из указанного буфера.

ReadMessage(Stream, Int32, String)

Исходный код:
MessageEncoder.cs
Исходный код:
MessageEncoder.cs
Исходный код:
MessageEncoder.cs

При переопределении в производном классе считывает сообщение из указанного потока.

public:
 abstract System::ServiceModel::Channels::Message ^ ReadMessage(System::IO::Stream ^ stream, int maxSizeOfHeaders, System::String ^ contentType);
public abstract System.ServiceModel.Channels.Message ReadMessage(System.IO.Stream stream, int maxSizeOfHeaders, string contentType);
abstract member ReadMessage : System.IO.Stream * int * string -> System.ServiceModel.Channels.Message
Public MustOverride Function ReadMessage (stream As Stream, maxSizeOfHeaders As Integer, contentType As String) As Message

Параметры

stream
Stream

Stream Объект, из которого считывается сообщение.

maxSizeOfHeaders
Int32

Максимальный размер заголовков, которые можно считывать из сообщения.

contentType
String

Многоцелевой тип контента на уровне сообщения (MIME).

Возвращаемое значение

Значение Message , считываемое из указанного потока.

Примеры

В следующем примере кода показано, как реализовать ReadMessage(Stream, Int32, String) метод.

public override Message ReadMessage(Stream stream, int maxSizeOfHeaders, string contentType)
{
    XmlReader reader = XmlReader.Create(stream);
    return Message.CreateMessage(reader, maxSizeOfHeaders, this.MessageVersion);
}

Применяется к

ReadMessage(ArraySegment<Byte>, BufferManager, String)

Исходный код:
MessageEncoder.cs
Исходный код:
MessageEncoder.cs
Исходный код:
MessageEncoder.cs

При переопределении в производном классе считывает сообщение из указанного потока.

public:
 abstract System::ServiceModel::Channels::Message ^ ReadMessage(ArraySegment<System::Byte> buffer, System::ServiceModel::Channels::BufferManager ^ bufferManager, System::String ^ contentType);
public abstract System.ServiceModel.Channels.Message ReadMessage(ArraySegment<byte> buffer, System.ServiceModel.Channels.BufferManager bufferManager, string contentType);
abstract member ReadMessage : ArraySegment<byte> * System.ServiceModel.Channels.BufferManager * string -> System.ServiceModel.Channels.Message
Public MustOverride Function ReadMessage (buffer As ArraySegment(Of Byte), bufferManager As BufferManager, contentType As String) As Message

Параметры

buffer
ArraySegment<Byte>

Тип ArraySegment<T>Byte , предоставляющий буфер, из которого сообщение десериализировано.

bufferManager
BufferManager

Управление BufferManager буфером, из которого сообщение десериализировано.

contentType
String

Многоцелевой тип контента на уровне сообщения (MIME).

Возвращаемое значение

Значение Message , считываемое из указанного потока.

Примеры

В следующем примере кода показано, как реализовать ReadMessage(ArraySegment<Byte>, BufferManager, String) метод.

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);
}

Применяется к

ReadMessage(Stream, Int32)

Исходный код:
MessageEncoder.cs
Исходный код:
MessageEncoder.cs
Исходный код:
MessageEncoder.cs

При переопределении в производном классе считывает сообщение из указанного потока.

public:
 System::ServiceModel::Channels::Message ^ ReadMessage(System::IO::Stream ^ stream, int maxSizeOfHeaders);
public System.ServiceModel.Channels.Message ReadMessage(System.IO.Stream stream, int maxSizeOfHeaders);
member this.ReadMessage : System.IO.Stream * int -> System.ServiceModel.Channels.Message
Public Function ReadMessage (stream As Stream, maxSizeOfHeaders As Integer) As Message

Параметры

stream
Stream

Stream Объект, из которого считывается сообщение.

maxSizeOfHeaders
Int32

Максимальный размер заголовков, которые можно считывать из сообщения.

Возвращаемое значение

Значение Message , считываемое из указанного потока.

Применяется к

ReadMessage(ArraySegment<Byte>, BufferManager)

Исходный код:
MessageEncoder.cs
Исходный код:
MessageEncoder.cs
Исходный код:
MessageEncoder.cs

При переопределении в производном классе считывает сообщение из указанного буфера.

public:
 System::ServiceModel::Channels::Message ^ ReadMessage(ArraySegment<System::Byte> buffer, System::ServiceModel::Channels::BufferManager ^ bufferManager);
public System.ServiceModel.Channels.Message ReadMessage(ArraySegment<byte> buffer, System.ServiceModel.Channels.BufferManager bufferManager);
member this.ReadMessage : ArraySegment<byte> * System.ServiceModel.Channels.BufferManager -> System.ServiceModel.Channels.Message
Public Function ReadMessage (buffer As ArraySegment(Of Byte), bufferManager As BufferManager) As Message

Параметры

buffer
ArraySegment<Byte>

Тип ArraySegment<T>Byte , предоставляющий буфер, из которого сообщение десериализировано.

bufferManager
BufferManager

Управление BufferManager буфером, из которого сообщение десериализировано.

Возвращаемое значение

Значение Message , считываемое из указанного буфера.

Применяется к