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

Поток, который необходимо обработать и передать приемнику десериализации.

responseMsg
IMessage

При возвращении этого метода содержит IMessage, в котором содержится ответное сообщение. Этот параметр передается неинициализированным.

responseHeaders
ITransportHeaders

Когда возвращается этот метод, он содержит ITransportHeaders, который включает заголовки, добавляемые в возвращаемое сообщение, идущее к клиенту. Этот параметр передается неинициализированным.

responseStream
Stream

Когда возвращается этот метод, он содержит поток Stream, направляющийся обратно в транспортный приемник. Этот параметр передается неинициализированным.

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

ServerProcessing

Значение состояния ServerProcessing, которое предоставляет сведения о том, как обрабатывалось сообщение.

Атрибуты

Исключения

У непосредственно вызывающего объекта отсутствует разрешение инфраструктуры.

Комментарии

Задание прокси-сервера заключается в преобразовании вызова метода, вызываемого на нем, в объект сообщения. Этот объект сообщения, реализующий IMessage интерфейс, передается из клиентского конца в конец сервера путем вызова ProcessMessage объектов приемника сообщений. Приемники сообщений объединяются в цепочку в том смысле, что каждый приемник сообщений отвечает за вызов ProcessMessage следующего приемника сообщений после выполнения его работы. Например, приемник сообщений, связанный с синхронизацией, может привести к получению или освобождению блокировки, а затем делегировать его приемнику подчиненных сообщений.

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