Freigeben über


System.Runtime.Remoting.Messaging-Namespace

Der System.Runtime.Remoting.Messaging-Namespace enthält Klassen zum Erstellen und Übermitteln von Meldungen. Die Remoteinfrastruktur verwendet Meldungen für die Kommunikation mit Remoteobjekten. Meldungen übertragen Remotemethodenaufrufe, aktivieren Remoteobjekte und übermitteln Informationen. Ein Meldungsobjekt enthält eine Gruppe benannter Eigenschaften, u. a. Aktionsbezeichner, Boteninformationen und Parameter. Die Klassen AsyncResult, RemotingSurrogateSelector und ReturnMessage zählen zu den wichtigsten Klassen des System.Runtime.Remoting.Messaging-Namespaces.

Die AsyncResult-Klasse speichert die Ergebnisse eines asynchronen Methodenaufrufs und gibt sie zurück. Die AsyncResult-Instanzen enthalten den return-Wert, den Aufrufstatus, den für den Aufruf verwendeten Delegaten und alle anderen Informationen zum asynchronen Methodenaufruf.

Mit der RemotingSurrogateSelector-Klasse kann die Serialisierung der Objekte gesteuert werden, die MarshalByRefObject erweitern. Ein RemotingSurrogateSelector wählt den für die Serialisierung und Deserialisierung dieser Objekte verwendeten Ersatz aus. Bei einem Ersatz handelt es sich um ein Objekt, das die Serialisierung und Deserialisierung eines Objekts steuern kann.

Die ReturnMessage-Klasse enthält Informationen, die nach einem Remotemethodenaufruf zurückgegeben werden. Eine ReturnMessage enthält den return-Wert und alle out-Parameter oder ref-Parameter, die das Ergebnis des Remotemethodenaufrufs bilden.

Klassen

  Klasse Beschreibung
Öffentliche Klasse AsyncResult Kapselt die Ergebnisse einer asynchronen Operation für einen asynchronen Delegaten.
Öffentliche Klasse CallContext Stellt eine Gruppe von Eigenschaften bereit, die über den Codeausführungspfad weitergegeben werden. Diese Klasse kann nicht vererbt werden.
Öffentliche Klasse ConstructionCall Implementiert die IConstructionCallMessage-Schnittstelle, um eine Anforderungsmeldung zu erstellen, die einen Konstruktoraufruf für ein Remoteobjekt bildet.
Öffentliche Klasse ConstructionResponse Implementiert die IConstructionReturnMessage-Schnittstelle, um eine Meldung als Antwort auf den Aufruf zum Instanziieren eines Remoteobjekts zu erstellen.
Öffentliche Klasse Header Definiert die Out-of-Band-Daten eines Aufrufs.
Öffentliche Klasse InternalMessageWrapper Schließt Remotingdaten für die Übergabe zwischen Meldungssenken ein. Diese können für Anforderungen vom Client an den Server oder für die nachfolgenden Antworten verwendet werden.
Öffentliche Klasse LogicalCallContext Stellt eine Gruppe von Eigenschaften bereit, die bei Remotemethodenaufrufen über den Codeausführungspfad weitergegeben werden.
Öffentliche Klasse MethodCall Implementiert die IMethodCallMessage-Schnittstelle, um eine Anforderungsmeldung zu erstellen, die als Methodenaufruf für ein Remoteobjekt fungiert.
Öffentliche Klasse MethodCallMessageWrapper Implementiert die IMethodCallMessage-Schnittstelle, um eine Anforderungsmeldung zu erstellen, die als Methodenaufruf für ein Remoteobjekt fungiert.
Öffentliche Klasse MethodResponse Implementiert die IMethodReturnMessage-Schnittstelle, um eine Meldung zu erstellen, die als Methodenantwort für ein Remoteobjekt fungiert.
Öffentliche Klasse MethodReturnMessageWrapper Implementiert die IMethodReturnMessage-Schnittstelle, um eine Meldung zu erstellen, die als Antwort auf einen Methodenaufruf für ein Remoteobjekt fungiert.
Öffentliche Klasse OneWayAttribute Kennzeichnet eine Methode als unidirektional, also als Methode ohne einen Rückgabewert und ohne out-Parameter oder ref-Parameter.
Öffentliche Klasse RemotingSurrogateSelector Wählt den Remoteersatz aus, der zum Serialisieren eines Objekts verwendet werden kann, das von einem MarshalByRefObject abgeleitet ist.
Öffentliche Klasse ReturnMessage Enthält eine Meldung, die als Reaktion auf einen Methodenaufruf für ein Remoteobjekt zurückgegeben wird.

Schnittstellen

  Schnittstelle Beschreibung
Öffentliche Schnittstelle ILogicalThreadAffinative Markiert ein Objekt, das Objekte außerhalb einer AppDomain in einem LogicalCallContext verbreiten kann.
Öffentliche Schnittstelle IMessage Enthält Kommunikationsdaten, die zwischen zusammenwirkenden Meldungsempfängern hin- und hergesendet werden.
Öffentliche Schnittstelle IMessageCtrl Bietet eine Möglichkeit zum Steuern asynchroner Meldungen, nachdem diese mithilfe von IMessageSink.AsyncProcessMessage gesendet wurden.
Öffentliche Schnittstelle IMessageSink Definiert die Schnittstelle für einen Meldungsempfänger.
Öffentliche Schnittstelle IMethodCallMessage Definiert die Meldungsschnittstelle für Methodenaufrufe.
Öffentliche Schnittstelle IMethodMessage Definiert die Schnittstelle für Methodenmeldungen.
Öffentliche Schnittstelle IMethodReturnMessage Definiert die Rückgabemeldungsschnittstelle für Methodenaufrufe.
Öffentliche Schnittstelle IRemotingFormatter Stellt die Schnittstelle für Remoteprozeduraufrufe (RPC) für alle Formatierungsprogramme bereit.

Delegaten

  Delegat Beschreibung
Öffentlicher Delegat HeaderHandler Stellt die Methode dar, die bei der Deserialisierung die Verarbeitung von Headern für den Stream behandelt.
Öffentlicher Delegat MessageSurrogateFilter Bestimmt, ob die RemotingSurrogateSelector-Klasse beim Erstellen einer ObjRef für eine MarshalByRefObject-Klasse eine bestimmte IMessage-Eigenschaft ignorieren soll.