ChannelServices Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece métodos estáticos para ajudar com o registro de canal, a resolução e a detecção de URL de comunicação remota. Essa classe não pode ser herdada.
public ref class ChannelServices sealed
public sealed class ChannelServices
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class ChannelServices
type ChannelServices = class
[<System.Runtime.InteropServices.ComVisible(true)>]
type ChannelServices = class
Public NotInheritable Class ChannelServices
- Herança
-
ChannelServices
- Atributos
Comentários
Os canais transportam mensagens entre aplicativos entre limites de comunicação remota, como domínios, processos e computadores do aplicativo. Essas travessias podem ser de entrada e saída. Um canal pode escutar em um ponto de extremidade para mensagens de entrada, enviar para um ponto de extremidade para mensagens de saída ou ambos. Isso fornece um ponto de extensibilidade no runtime para conectar uma ampla variedade de protocolos, embora o runtime possa não estar na outra extremidade do canal. Objetos em tempo de execução podem ser usados para expor uma ampla variedade de semânticas e entidades. O canal fornece o ponto de extensibilidade para converter as mensagens de e para os protocolos específicos.
Os canais devem expor a IChannel interface , que fornece propriedades informativas, como e ChannelNameChannelPriority. Os canais são registrados usando o ChannelServices.RegisterChannel método . Os canais também podem ser carregados da configuração de comunicação remota. (Consulte <Elemento de canal> (Modelo) para obter detalhes.)
No lado do cliente, as mensagens são entregues à cadeia de coletores do canal cliente depois de atravessarem a cadeia de clientes Context . O primeiro coletor de canal normalmente é um IClientFormatterSink, que serializa a mensagem em um fluxo que é passado pela cadeia de coletores de canal para o coletor de transporte do cliente. Em seguida, o coletor de transporte do cliente grava esse fluxo no fio.
No lado do servidor, o coletor de transporte do servidor lê as solicitações da transmissão e passa o fluxo de solicitação para a cadeia de coletores do canal do servidor. O coletor do formatador de servidor no final dessa cadeia desserializará a solicitação em uma mensagem. Em seguida, ele entregará essa mensagem à infraestrutura de comunicação remota, que a enviará para a cadeia de servidores Context .
Propriedades
RegisteredChannels |
Obtém uma lista de canais registrados no momento. |
Métodos
AsyncDispatchMessage(IMessage, IMessageSink) |
Expede assincronamente a mensagem fornecida para as cadeias do lado do servidor com base no URI inserido na mensagem. |
CreateServerChannelSinkChain(IServerChannelSinkProvider, IChannelReceiver) |
Cria uma cadeia de coletores de canal para o canal especificado. |
DispatchMessage(IServerChannelSinkStack, IMessage, IMessage) |
Expede as chamadas remotas de entrada. |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetChannel(String) |
Retorna um canal registrado com o nome especificado. |
GetChannelSinkProperties(Object) |
Retorna um IDictionary de propriedades para um determinado proxy. |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
GetUrlsForObject(MarshalByRefObject) |
Retorna uma matriz de todas as URLs que podem ser usadas para alcançar o objeto especificado. |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
RegisterChannel(IChannel) |
Obsoleto.
Registra um canal com os serviços de canal. RegisterChannel(IChannel) é obsoleto. Use RegisterChannel(IChannel, Boolean) em seu lugar. |
RegisterChannel(IChannel, Boolean) |
Registra um canal com os serviços de canal. |
SyncDispatchMessage(IMessage) |
Expede de forma síncrona a mensagem de entrada para as cadeias do lado do servidor com base no URI inserido na mensagem. |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
UnregisterChannel(IChannel) |
Cancela o registro de um canal específico da lista de canais registrados. |