MessageEncoder.ReadMessage 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
在派生类中重写时,从指定的流中读取消息。
重载
| 名称 | 说明 |
|---|---|
| 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
参数
- 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
参数
- 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从指定的缓冲区读取该数据。