Compartir a través de


ChannelServices Clase

Definición

Proporciona métodos estáticos para ayudar con el registro de canales remotos, la resolución y la detección de direcciones URL. Esta clase no puede heredarse.

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
Herencia
ChannelServices
Atributos

Comentarios

Canales de transporte de mensajes entre aplicaciones a través de límites de comunicación remota como dominios de aplicación, procesos y equipos. Estos cruces pueden ser entrantes y salientes. Un canal puede escuchar en un punto de conexión para los mensajes entrantes, enviar a un punto de conexión para los mensajes salientes o ambos. Esto proporciona un punto de extensibilidad en el tiempo de ejecución para conectar una amplia gama de protocolos, aunque es posible que el tiempo de ejecución no esté en el otro extremo del canal. Los objetos en tiempo de ejecución se pueden usar para exponer una amplia gama de semánticas y entidades. El canal proporciona el punto de extensibilidad para convertir los mensajes en y desde los protocolos específicos.

Los canales deben exponer la IChannel interfaz , que proporciona propiedades informativas como y ChannelNameChannelPriority. Los canales se registran mediante el ChannelServices.RegisterChannel método . Los canales también se pueden cargar desde la configuración de comunicación remota. (Consulte el< elemento channel> (plantilla) para obtener más información).

En el lado cliente, los mensajes se entregan a la cadena de receptores del canal de cliente después de atravesar la cadena de cliente Context . El primer receptor de canal suele ser , IClientFormatterSinkque serializa el mensaje en una secuencia que se pasa por la cadena de receptores del canal al receptor de transporte del cliente. A continuación, el receptor de transporte del cliente escribe esta secuencia en la conexión.

En el lado servidor, el receptor de transporte del servidor lee las solicitudes fuera de la conexión y pasa la secuencia de solicitudes a la cadena de receptores del canal del servidor. El receptor del formateador de servidor al final de esta cadena deserializará la solicitud en un mensaje. A continuación, enviará este mensaje a la infraestructura de comunicación remota, que lo enviará a la cadena de servidores Context .

Propiedades

Nombre Description
RegisteredChannels

Obtiene una lista de canales registrados actualmente.

Métodos

Nombre Description
AsyncDispatchMessage(IMessage, IMessageSink)

Envía de forma asincrónica el mensaje dado a las cadenas del lado servidor en función del URI incrustado en el mensaje.

CreateServerChannelSinkChain(IServerChannelSinkProvider, IChannelReceiver)

Crea una cadena de receptores de canal para el canal especificado.

DispatchMessage(IServerChannelSinkStack, IMessage, IMessage)

Envía llamadas remotas entrantes.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetChannel(String)

Devuelve un canal registrado con el nombre especificado.

GetChannelSinkProperties(Object)

Devuelve un IDictionary de propiedades para un proxy determinado.

GetHashCode()

Sirve como función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
GetUrlsForObject(MarshalByRefObject)

Devuelve una matriz de todas las direcciones URL que se pueden usar para alcanzar el objeto especificado.

MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
RegisterChannel(IChannel, Boolean)

Registra un canal con los servicios del canal.

RegisterChannel(IChannel)
Obsoletos.

Registra un canal con los servicios del canal. RegisterChannel(IChannel) está obsoleto. Utilice RegisterChannel(IChannel, Boolean) en su lugar.

SyncDispatchMessage(IMessage)

Envía de forma sincrónica el mensaje entrante a las cadenas del lado servidor en función del URI incrustado en el mensaje.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)
UnregisterChannel(IChannel)

Anula el registro de un canal determinado de la lista de canales registrados.

Se aplica a