ChannelServices Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt statische Methoden bereit, die bei der Remotingkanalregistrierung, -auflösung und -URL-Ermittlung unterstützt werden. Diese Klasse kann nicht vererbt werden.
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
- Vererbung
-
ChannelServices
- Attribute
Hinweise
Kanäle transportieren Nachrichten zwischen Anwendungen über solche Remotinggrenzen hinweg wie Anwendungsdomänen, Prozesse und Computer. Diese Übergänge können eingehend und ausgehend sein. Ein Kanal kann auf einem Endpunkt auf eingehende Nachrichten lauschen, an einen Endpunkt für ausgehende Nachrichten oder beides senden. Dadurch wird ein Erweiterbarkeitspunkt in der Laufzeit bereitgestellt, um eine vielzahl von Protokollen zu verbinden, auch wenn die Laufzeit möglicherweise nicht am anderen Ende des Kanals liegt. Laufzeitobjekte können verwendet werden, um eine breite Palette von Semantik und Entitäten verfügbar zu machen. Der Kanal stellt den Erweiterbarkeitspunkt bereit, um die Nachrichten in und aus den spezifischen Protokollen zu konvertieren.
Kanäle müssen die IChannel Schnittstelle verfügbar machen, die Informationseigenschaften wie die ChannelName und ChannelPriority. Kanäle werden mithilfe der ChannelServices.RegisterChannel Methode registriert. Kanäle können auch aus der Remotingkonfiguration geladen werden. (Details finden Sie unter <Kanalelement> (Vorlage ).)
Auf clientseitiger Seite werden Nachrichten an die Sinkkette des Clientkanals übergeben, nachdem sie die Clientkette Context durchlaufen haben. Die erste Kanalsenke ist in der Regel eine IClientFormatterSink, die die Nachricht in einen Datenstrom serialisiert, der die Kanalsenkenkette an die Clienttransportsenke übergeben wird. Der Clienttransportsenke schreibt diesen Datenstrom dann in das Draht.
Auf der Serverseite liest die Servertransportsenke Anforderungen aus dem Draht und übergibt den Anforderungsstream an die Serverkanal-Sinkkette. Der Serverformatierer am Ende dieser Kette wird die Anforderung in eine Nachricht deserialisieren. Diese Nachricht wird dann an die Remotinginfrastruktur übergeben, die sie an die Serverkette Context sendet.
Eigenschaften
| Name | Beschreibung |
|---|---|
| RegisteredChannels |
Ruft eine Liste der aktuell registrierten Kanäle ab. |
Methoden
| Name | Beschreibung |
|---|---|
| AsyncDispatchMessage(IMessage, IMessageSink) |
Verteilt die angegebene Nachricht asynchron an die serverseitige Kette(n) basierend auf dem in der Nachricht eingebetteten URI. |
| CreateServerChannelSinkChain(IServerChannelSinkProvider, IChannelReceiver) |
Erstellt eine Kanalsenkenkette für den angegebenen Kanal. |
| DispatchMessage(IServerChannelSinkStack, IMessage, IMessage) |
Verteilt eingehende Remoteanrufe. |
| Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
| GetChannel(String) |
Gibt einen registrierten Kanal mit dem angegebenen Namen zurück. |
| GetChannelSinkProperties(Object) |
Gibt eine IDictionary von Eigenschaften für einen bestimmten Proxy zurück. |
| GetHashCode() |
Dient als die Standard-Hashfunktion (Geerbt von Object) |
| GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
| GetUrlsForObject(MarshalByRefObject) |
Gibt ein Array aller URLs zurück, die verwendet werden können, um das angegebene Objekt zu erreichen. |
| MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
| RegisterChannel(IChannel, Boolean) |
Registriert einen Kanal mit den Kanaldiensten. |
| RegisterChannel(IChannel) |
Veraltet.
Registriert einen Kanal mit den Kanaldiensten. RegisterChannel(IChannel) ist veraltet. Verwenden Sie stattdessen RegisterChannel(IChannel, Boolean). |
| SyncDispatchMessage(IMessage) |
Verteilt die eingehende Nachricht synchron an die serverseitige Kette(n), basierend auf dem in der Nachricht eingebetteten URI. |
| ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |
| UnregisterChannel(IChannel) |
Hebt die Registrierung eines bestimmten Kanals aus der Liste der registrierten Kanäle auf. |