IClientChannelSinkProvider.CreateSink(IChannelSender, String, Object) Methode

Definition

Erstellt eine Senkenkette.

public:
 System::Runtime::Remoting::Channels::IClientChannelSink ^ CreateSink(System::Runtime::Remoting::Channels::IChannelSender ^ channel, System::String ^ url, System::Object ^ remoteChannelData);
public System.Runtime.Remoting.Channels.IClientChannelSink CreateSink(System.Runtime.Remoting.Channels.IChannelSender channel, string url, object remoteChannelData);
[System.Security.SecurityCritical]
public System.Runtime.Remoting.Channels.IClientChannelSink CreateSink(System.Runtime.Remoting.Channels.IChannelSender channel, string url, object remoteChannelData);
abstract member CreateSink : System.Runtime.Remoting.Channels.IChannelSender * string * obj -> System.Runtime.Remoting.Channels.IClientChannelSink
[<System.Security.SecurityCritical>]
abstract member CreateSink : System.Runtime.Remoting.Channels.IChannelSender * string * obj -> System.Runtime.Remoting.Channels.IClientChannelSink
Public Function CreateSink (channel As IChannelSender, url As String, remoteChannelData As Object) As IClientChannelSink

Parameter

channel
IChannelSender

Kanal, für den die aktuelle Senkenkette erstellt wird.

url
String

Die URL des Objekts, mit dem eine Verbindung hergestellt werden soll. Dieser Parameter kann sein null , wenn die Verbindung vollständig auf den informationen basiert, die remoteChannelData im Parameter enthalten sind.

remoteChannelData
Object

Ein Kanaldatenobjekt, das einen Kanal auf dem Remoteserver beschreibt.

Gibt zurück

Die erste Spüle der neu gebildeten Kanalsenkenkette oder null, die angibt, dass dieser Anbieter keine Verbindung für diesen Endpunkt bereitstellt oder nicht.

Attribute

Ausnahmen

Der direkte Aufrufer verfügt nicht über die Infrastrukturberechtigung.

Beispiele

Im folgenden Codebeispiel wird eine Implementierung dieser Methode veranschaulicht.

virtual IClientChannelSink^ CreateSink( IChannelSender^ channel, String^ url, Object^ remoteChannelData )
{
   Console::WriteLine( "Creating ClientSink for {0}", url );
   
   // Create the next sink in the chain.
   IClientChannelSink^ nextSink = nextProvider->CreateSink( channel, url, remoteChannelData );
   
   // Hook our sink up to it.
   return (gcnew ClientSink( nextSink ));
}
public IClientChannelSink CreateSink (IChannelSender channel, String url, Object remoteChannelData)
{

    Console.WriteLine("Creating ClientSink for {0}", url);

    // Create the next sink in the chain.
    IClientChannelSink nextSink = nextProvider.CreateSink(channel, url, remoteChannelData);

    // Hook our sink up to it.
    return( new ClientSink(nextSink) );
}

Hinweise

Wenn die CreateSink Methode aufgerufen wird, erstellt sie eine eigene Kanalspüle, leitet den CreateSink Aufruf an den nächsten Sinkanbieter in der Kette weiter (sofern vorhanden), und stellt sicher, dass die nächste Spüle und die aktuelle Spüle miteinander verknüpft sind.

Gilt für: