Udostępnij za pośrednictwem


IClientChannelSinkProvider.CreateSink(IChannelSender, String, Object) Metoda

Definicja

Tworzy łańcuch ujścia.

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

Parametry

channel
IChannelSender

Kanał, dla którego jest konstruowany bieżący łańcuch ujścia.

url
String

Adres URL obiektu do nawiązania połączenia. Ten parametr może być taki null , jeśli połączenie jest oparte całkowicie na informacjach zawartych w parametrze remoteChannelData .

remoteChannelData
Object

Obiekt danych kanału, który opisuje kanał na serwerze zdalnym.

Zwraca

IClientChannelSink

Pierwszy ujście nowo utworzonego łańcucha ujścia kanału lub null, który wskazuje, że ten dostawca nie będzie lub nie może zapewnić połączenia dla tego punktu końcowego.

Atrybuty

Wyjątki

Bezpośredni obiekt wywołujący nie ma uprawnień do infrastruktury.

Przykłady

Poniższy przykład kodu ilustruje implementację tej metody.

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) );
}

Uwagi

CreateSink Gdy metoda jest wywoływana, tworzy własne ujście kanału, przekazuje CreateSink wywołanie do następnego dostawcy ujścia w łańcuchu (jeśli istnieje) i zapewnia, że następny ujście i bieżący są połączone razem.

Dotyczy