Freigeben über


TcpChannel.CreateMessageSink(String, Object, String) Methode

Definition

Gibt eine Channelnachrichtensenke zurück, die Meldungen an die angegebene URL oder das angegebene Channeldatenobjekt übermittelt.

public:
 virtual System::Runtime::Remoting::Messaging::IMessageSink ^ CreateMessageSink(System::String ^ url, System::Object ^ remoteChannelData, [Runtime::InteropServices::Out] System::String ^ % objectURI);
public System.Runtime.Remoting.Messaging.IMessageSink CreateMessageSink (string url, object remoteChannelData, out string objectURI);
abstract member CreateMessageSink : string * obj * string -> System.Runtime.Remoting.Messaging.IMessageSink
override this.CreateMessageSink : string * obj * string -> System.Runtime.Remoting.Messaging.IMessageSink
Public Function CreateMessageSink (url As String, remoteChannelData As Object, ByRef objectURI As String) As IMessageSink

Parameter

url
String

Die URL, an die die neue Senke Nachrichten übermitteln soll. Kann null sein.

remoteChannelData
Object

Das Channeldatenobjekt des Remotehosts, an das die neue Senke Nachrichten übermitteln soll. Kann null sein.

objectURI
String

Enthält bei der Rückgabe dieser Methode einen URI der neuen Channelnachrichtensenke, die Meldungen an die angegebene URL oder an das angegebene Channeldatenobjekt übermittelt. Dieser Parameter wird nicht initialisiert übergeben.

Gibt zurück

Eine Channelnachrichtensenke, die Meldungen an die angegebene URL oder das angegebene Channeldatenobjekt übermittelt.

Implementiert

Beispiele

Im folgenden Codebeispiel wird die Verwendung dieser Methode veranschaulicht.

// Create a message sink.
String^ objectUri;
System::Runtime::Remoting::Messaging::IMessageSink^ messageSink = 
    clientChannel->CreateMessageSink(
        "tcp://localhost:9090/RemoteObject.rem", nullptr,
        objectUri);
Console::WriteLine("The URI of the message sink is {0}.", 
    objectUri);
if (messageSink != nullptr)
{
    Console::WriteLine("The type of the message sink is {0}.", 
        messageSink->GetType()->ToString());
}
// Create a message sink.
string objectUri;
System.Runtime.Remoting.Messaging.IMessageSink messageSink =
    clientChannel.CreateMessageSink(
        "tcp://localhost:9090/RemoteObject.rem", null,
        out objectUri);
Console.WriteLine("The URI of the message sink is {0}.",
    objectUri);
if (messageSink != null)
{
    Console.WriteLine("The type of the message sink is {0}.",
        messageSink.GetType().ToString());
}

Hinweise

Die CreateMessageSink -Methode gibt eine Kanalnachrichtensenke zurück, die Nachrichten entweder an die angegebene URL oder an das angegebene Kanaldatenobjekt übermittelt. Wenn der uri Parameter ist null, remoteChannelData wird als Ziel für die Senke verwendet. Entweder die url Parameter oder remoteChannelData können sein null, aber nicht beide.

Kanalsenken bieten einen Plug-In-Punkt, der den Zugriff auf die zugrunde liegenden Nachrichten ermöglicht, die durch den Kanal fließen, sowie auf den Stream, der vom Transportmechanismus zum Senden von Nachrichten an ein Remoteobjekt verwendet wird. Kanalsenken werden in einer Kette von ChannelSinkProviders miteinander verknüpft, und alle Kanalnachrichten fließen durch diese Kette von Senken, bevor die Nachricht schließlich serialisiert und transportiert wird.

Gilt für: