IServerChannelSink.ProcessMessage Metodo

Definizione

Richiede l'elaborazione dei messaggi dal sink corrente.

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

Parametri

sinkStack
IServerChannelSinkStack

Stack di sink di canale che ha chiamato il sink corrente.

requestMsg
IMessage

Messaggio che contiene la richiesta.

requestHeaders
ITransportHeaders

Intestazioni recuperate dal messaggio in arrivo dal client.

requestStream
Stream

Flusso che deve essere elaborato e passato al sink di deserializzazione.

responseMsg
IMessage

Quando termina, questo metodo contiene un oggetto IMessage che contiene il messaggio di risposta. Questo parametro viene passato non inizializzato.

responseHeaders
ITransportHeaders

Quando termina, questo metodo contiene un oggetto ITransportHeaders che contiene le intestazioni da aggiungere per restituire l'intestazione del messaggio al client. Questo parametro viene passato non inizializzato.

responseStream
Stream

Quando termina, questo metodo contiene un Stream oggetto che torna al sink di trasporto. Questo parametro viene passato non inizializzato.

Valori restituiti

Valore ServerProcessing di stato che fornisce informazioni sull'elaborazione del messaggio.

Attributi

Eccezioni

Il chiamante immediato non dispone dell'autorizzazione dell'infrastruttura.

Commenti

Il processo di un proxy consiste nel convertire una chiamata al metodo richiamata in un oggetto messaggio. Questo oggetto messaggio, che implementa l'interfaccia, viene passato dall'estremità IMessage client al server finale richiamando ProcessMessage gli oggetti sink del messaggio. I sink dei messaggi vengono concatenati nel senso che ogni sink di messaggio è responsabile della chiamata ProcessMessage al sink di messaggio successivo dopo che ha eseguito il suo lavoro. Ad esempio, un sink di messaggio correlato alla sincronizzazione può causare l'acquisizione o il rilascio di un blocco e quindi delegato ulteriormente al sink di messaggi downstream.

Si applica a