MessageEncoder.ReadMessage 方法

定义

在派生类中重写时,从指定的流中读取消息。

重载

名称 说明
ReadMessage(Stream, Int32, String)

在派生类中重写时,从指定的流中读取消息。

ReadMessage(ArraySegment<Byte>, BufferManager, String)

在派生类中重写时,从指定的流中读取消息。

ReadMessage(Stream, Int32)

在派生类中重写时,从指定的流中读取消息。

ReadMessage(ArraySegment<Byte>, BufferManager)

在派生类中重写时,从指定的缓冲区读取消息。

ReadMessage(Stream, Int32, String)

Source:
MessageEncoder.cs
Source:
MessageEncoder.cs
Source:
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

多用途 Internet 邮件扩展 (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)

Source:
MessageEncoder.cs
Source:
MessageEncoder.cs
Source:
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

多用途 Internet 邮件扩展 (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)

Source:
MessageEncoder.cs
Source:
MessageEncoder.cs
Source:
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)

Source:
MessageEncoder.cs
Source:
MessageEncoder.cs
Source:
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从指定的缓冲区读取该数据。

适用于