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 na comunicação remota de registro, resolução e descoberta de URL. 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 de aplicativos, processos e computadores. 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 ambas. Isso fornece um ponto de extensibilidade no runtime para conectar uma ampla gama 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 gama 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 o ChannelName e ChannelPriority. 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 <o elemento do canal> (Modelo) para obter detalhes.)
No lado do cliente, as mensagens são entregues à cadeia de coletores do canal do 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 do coletor 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 do fio e passa o fluxo de solicitação para a cadeia de coletores do canal do servidor. O coletor de 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
| Nome | Description |
|---|---|
| RegisteredChannels |
Obtém uma lista de canais registrados no momento. |
Métodos
| Nome | Description |
|---|---|
| AsyncDispatchMessage(IMessage, IMessageSink) |
Envia de forma assíncrona 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) |
Despacha 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 uma IDictionary das propriedades de 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 Objectatual. (Herdado de Object) |
| RegisterChannel(IChannel, Boolean) |
Registra um canal com os serviços de canal. |
| RegisterChannel(IChannel) |
Obsoleto.
Registra um canal com os serviços de canal. RegisterChannel(IChannel) é obsoleto. Use RegisterChannel(IChannel, Boolean) em seu lugar. |
| SyncDispatchMessage(IMessage) |
Envia 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. |