ChannelServices Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Fornisce metodi statici per facilitare la registrazione, la risoluzione e l'individuazione degli URL dei canali remoti. Questa classe non può essere ereditata.
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
- Ereditarietà
-
ChannelServices
- Attributi
Commenti
I canali trasportano messaggi tra applicazioni attraverso limiti di comunicazione remota come domini applicazione, processi e computer. Questi attraversamenti possono essere in ingresso e in uscita. Un canale può restare in ascolto su un endpoint per i messaggi in ingresso, inviare a un endpoint per i messaggi in uscita o entrambi. Ciò fornisce un punto di estendibilità nel runtime per collegare un'ampia gamma di protocolli, anche se il runtime potrebbe non trovarsi all'altra estremità del canale. Gli oggetti di runtime possono essere usati per esporre un'ampia gamma di semantiche ed entità. Il canale fornisce il punto di estendibilità per convertire i messaggi in e dai protocolli specifici.
I canali devono esporre l'interfaccia IChannel , che fornisce proprietà informative come ChannelName e ChannelPriority. I canali vengono registrati usando il ChannelServices.RegisterChannel metodo . I canali possono anche essere caricati dalla configurazione remota.
Sul lato client, i messaggi vengono inviati alla catena di sink del canale client dopo l'attraversamento della catena client Context . Il primo sink del canale è in genere un IClientFormatterSinkoggetto , che serializza il messaggio in un flusso passato alla catena di sink del canale al sink di trasporto client. Il sink di trasporto client scrive quindi questo flusso in rete.
Sul lato server, il sink di trasporto server legge le richieste fuori rete e passa il flusso di richiesta alla catena di sink del canale del server. Il sink del formattatore del server alla fine di questa catena deserializzerà la richiesta in un messaggio. Il messaggio verrà quindi inviato all'infrastruttura remota, che lo invierà alla catena di server Context .
Proprietà
| Nome | Descrizione |
|---|---|
| RegisteredChannels |
Ottiene un elenco di canali attualmente registrati. |
Metodi
| Nome | Descrizione |
|---|---|
| AsyncDispatchMessage(IMessage, IMessageSink) |
Invia in modo asincrono il messaggio specificato alle catene lato server in base all'URI incorporato nel messaggio. |
| CreateServerChannelSinkChain(IServerChannelSinkProvider, IChannelReceiver) |
Crea una catena di sink del canale per il canale specificato. |
| DispatchMessage(IServerChannelSinkStack, IMessage, IMessage) |
Invia le chiamate remote in ingresso. |
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| GetChannel(String) |
Restituisce un canale registrato con il nome specificato. |
| GetChannelSinkProperties(Object) |
Restituisce un IDictionary di proprietà per un determinato proxy. |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| GetUrlsForObject(MarshalByRefObject) |
Restituisce una matrice di tutti gli URL che possono essere utilizzati per raggiungere l'oggetto specificato. |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| RegisterChannel(IChannel, Boolean) |
Registra un canale con i servizi del canale. |
| RegisterChannel(IChannel) |
Obsoleti.
Registra un canale con i servizi del canale. RegisterChannel(IChannel) è obsoleto. Per favore, usa RegisterChannel(IChannel, Boolean) invece. |
| SyncDispatchMessage(IMessage) |
Invia in modo sincrono il messaggio in arrivo alle catene lato server in base all'URI incorporato nel messaggio. |
| ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
| UnregisterChannel(IChannel) |
Annulla la registrazione di un determinato canale dall'elenco dei canali registrati. |