System.Runtime.Remoting.Messaging Espaço de Nomes

Contém classes usadas para criar e transmitir mensagens. A infraestrutura remota utiliza mensagens para comunicar com objetos remotos. As mensagens são usadas para transmitir chamadas remotas de métodos, ativar objetos remotos e comunicar informação. Um objeto mensagem carrega um conjunto de propriedades nomeadas, incluindo identificadores de ação, informação do enviador e parâmetros. Algumas das classes mais importantes do System.Runtime.Remoting.Messaging namespace são a AsyncResult classe, a RemotingSurrogateSelector classe e a ReturnMessage classe.

Classes

Name Description
AsyncResult

Encapsula os resultados de uma operação assíncrona num delegado.

CallContext

Fornece um conjunto de propriedades que são transportadas com o caminho do código de execução. Esta classe não pode ser herdada.

ConstructionCall

Implementa a IConstructionCallMessage interface para criar uma mensagem de pedido que constitui uma chamada de construtor num objeto remoto.

ConstructionResponse

Implementa a IConstructionReturnMessage interface para criar uma mensagem que responde a uma chamada para instanciar um objeto remoto.

Header

Define os dados fora de banda para uma chamada.

InternalMessageWrapper

Envolve dados remotos para passagem entre sinks de mensagens, seja para pedidos do cliente para o servidor ou para as respostas subsequentes.

LogicalCallContext

Fornece um conjunto de propriedades que são transportadas com o caminho do código de execução durante chamadas remotas de métodos.

MethodCall

Implementa a IMethodCallMessage interface para criar uma mensagem de pedido que atua como uma chamada de método num objeto remoto.

MethodCallMessageWrapper

Implementa a IMethodCallMessage interface para criar uma mensagem de pedido que atua como uma chamada de método num objeto remoto.

MethodResponse

Implementa a IMethodReturnMessage interface para criar uma mensagem que atua como resposta de método num objeto remoto.

MethodReturnMessageWrapper

Implementa a IMethodReturnMessage interface para criar uma mensagem que atua como resposta a uma chamada de método num objeto remoto.

OneWayAttribute

Marca um método como unidirecional, sem valor de retorno e out /ou ref parâmetros.

RemotingSurrogateSelector

Seleciona o substituto remoto que pode ser usado para serializar um objeto que deriva de um MarshalByRefObject.

ReturnMessage

Detém uma mensagem devolvida em resposta a uma chamada de método num objeto remoto.

Interfaces

Name Description
ILogicalThreadAffinative

Marca um objeto que pode propagar-se fora de um AppDomain em um LogicalCallContext.

IMessage

Contém dados de comunicação enviados entre sumidoiros de mensagens cooperantes.

IMessageCtrl

Fornece uma forma de controlar mensagens assíncronas após terem sido despachadas usando o AsyncProcessMessage(IMessage, IMessageSink).

IMessageSink

Define a interface para um dissipador de mensagens.

IMethodCallMessage

Define a interface de chamada de mensagens de método.

IMethodMessage

Define a interface da mensagem do método.

IMethodReturnMessage

Define a interface de chamada de retorno de mensagens de método.

IRemotingFormatter

Fornece a interface de chamada de procedimento remoto (RPC) para todos os formatadores.

Delegados

Name Description
HeaderHandler

Representa o método que irá gerir o processamento dos cabeçalhos no fluxo durante a desserialização.

MessageSurrogateFilter

Determina se a RemotingSurrogateSelector classe deve ignorar uma determinada IMessage propriedade ao criar um ObjRef para uma MarshalByRefObject classe.

Observações

A AsyncResult classe armazena e devolve os resultados de uma chamada de método assíncrona. AsyncResult As instâncias contêm o return valor, o estado da chamada, o delegado usado para a chamada e outras informações sobre a chamada de método assíncrona.

A RemotingSurrogateSelector classe pode ser usada para controlar a serialização de objetos que estendem MarshalByRefObject. A RemotingSurrogateSelector seleciona o substituto usado na serialização e desserialização desses objetos. Um substituto é um objeto que pode controlar a serialização ou deserialização de um objeto.

A ReturnMessage classe mantém a informação devolvida após uma chamada remota de método. A ReturnMessage detém o return valor e qualquer out ou ref parâmetros resultantes da chamada remota ao método.