Freigeben über


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

Der Channel, für den die aktuelle Senkenkette erstellt wird.

url
String

Die URL des Objekts, mit dem eine Verbindung hergestellt werden soll. Dieser Parameter kann null sein, wenn die Verbindung ausschließlich auf den im remoteChannelData-Parameter enthaltenen Informationen basiert.

remoteChannelData
Object

Ein Channeldatenobjekt, das einen Channel auf dem Remoteserver beschreibt.

Gibt zurück

Die erste Senke der neu gebildeten Channelsenkenkette oder null, um anzugeben, dass dieser Anbieter keine Verbindung für diesen Endpunkt bereitstellt oder bereitstellen kann.

Attribute

Ausnahmen

Der direkte Aufrufer verfügt nicht über die Berechtigung für die Infrastruktur.

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 Kanalsenke, leitet den CreateSink Aufruf an den nächsten Senkenanbieter in der Kette weiter (falls vorhanden), und stellt sicher, dass die nächste Senke und die aktuelle Senke miteinander verknüpft sind.

Gilt für: