Share via


IServerChannelSink.ProcessMessage 方法

定義

要求來自目前接收的訊息處理。

public:
 System::Runtime::Remoting::Channels::ServerProcessing ProcessMessage(System::Runtime::Remoting::Channels::IServerChannelSinkStack ^ sinkStack, System::Runtime::Remoting::Messaging::IMessage ^ requestMsg, System::Runtime::Remoting::Channels::ITransportHeaders ^ requestHeaders, System::IO::Stream ^ requestStream, [Runtime::InteropServices::Out] System::Runtime::Remoting::Messaging::IMessage ^ % responseMsg, [Runtime::InteropServices::Out] System::Runtime::Remoting::Channels::ITransportHeaders ^ % responseHeaders, [Runtime::InteropServices::Out] System::IO::Stream ^ % responseStream);
public System.Runtime.Remoting.Channels.ServerProcessing ProcessMessage (System.Runtime.Remoting.Channels.IServerChannelSinkStack sinkStack, System.Runtime.Remoting.Messaging.IMessage requestMsg, System.Runtime.Remoting.Channels.ITransportHeaders requestHeaders, System.IO.Stream requestStream, out System.Runtime.Remoting.Messaging.IMessage responseMsg, out System.Runtime.Remoting.Channels.ITransportHeaders responseHeaders, out System.IO.Stream responseStream);
[System.Security.SecurityCritical]
public System.Runtime.Remoting.Channels.ServerProcessing ProcessMessage (System.Runtime.Remoting.Channels.IServerChannelSinkStack sinkStack, System.Runtime.Remoting.Messaging.IMessage requestMsg, System.Runtime.Remoting.Channels.ITransportHeaders requestHeaders, System.IO.Stream requestStream, out System.Runtime.Remoting.Messaging.IMessage responseMsg, out System.Runtime.Remoting.Channels.ITransportHeaders responseHeaders, out System.IO.Stream responseStream);
abstract member ProcessMessage : System.Runtime.Remoting.Channels.IServerChannelSinkStack * System.Runtime.Remoting.Messaging.IMessage * System.Runtime.Remoting.Channels.ITransportHeaders * System.IO.Stream * IMessage * ITransportHeaders * Stream -> System.Runtime.Remoting.Channels.ServerProcessing
[<System.Security.SecurityCritical>]
abstract member ProcessMessage : System.Runtime.Remoting.Channels.IServerChannelSinkStack * System.Runtime.Remoting.Messaging.IMessage * System.Runtime.Remoting.Channels.ITransportHeaders * System.IO.Stream * IMessage * ITransportHeaders * Stream -> System.Runtime.Remoting.Channels.ServerProcessing
Public Function ProcessMessage (sinkStack As IServerChannelSinkStack, requestMsg As IMessage, requestHeaders As ITransportHeaders, requestStream As Stream, ByRef responseMsg As IMessage, ByRef responseHeaders As ITransportHeaders, ByRef responseStream As Stream) As ServerProcessing

參數

sinkStack
IServerChannelSinkStack

呼叫目前接收的通道接收堆疊。

requestMsg
IMessage

包含要求的訊息。

requestHeaders
ITransportHeaders

從來自用戶端的連入訊息中擷取的標頭。

requestStream
Stream

必須處理和傳遞至還原序列化 (Deserialization) 接收的資料流。

responseMsg
IMessage

當這個方法傳回時,會包含存有回應訊息的 IMessage。 這個參數會以未初始化的狀態傳遞。

responseHeaders
ITransportHeaders

當這個方法傳回時,會包含保存標頭的 ITransportHeaders,而這些標頭將加入前往用戶端的傳回訊息。 這個參數會以未初始化的狀態傳遞。

responseStream
Stream

當這個方法傳回時,包含返回至傳輸接收的 Stream。 這個參數會以未初始化的狀態傳遞。

傳回

ServerProcessing 狀態值,提供訊息如何處理的相關資訊。

屬性

例外狀況

立即呼叫端沒有基礎結構使用權限。

備註

Proxy 的作業是將叫用的方法呼叫轉換成訊息物件。 實作 介面的 IMessage 這個訊息物件會透過叫 ProcessMessage 用訊息接收物件,從用戶端端傳遞至伺服器端。 訊息接收會鏈結在一起,也就是說,每個訊息接收都會在執行其工作之後,負責在下一個訊息接收上呼叫 ProcessMessage 。 例如,同步處理相關的訊息接收可能會導致取得或釋放鎖定,然後再委派給下游訊息接收。

適用於