TcpChannel Konstruktorer

Definition

Initierar en ny instans av TcpChannel klassen.

Överlagringar

Name Description
TcpChannel()

Initierar en ny instans av TcpChannel klassen, aktiverar endast en klientkanal och inte en serverkanal.

TcpChannel(Int32)

Initierar en ny instans av TcpChannel klassen med en serverkanal som lyssnar på den angivna porten.

TcpChannel(IDictionary, IClientChannelSinkProvider, IServerChannelSinkProvider)

Initierar en ny instans av TcpChannel klassen med de angivna konfigurationsegenskaperna och mottagare.

TcpChannel()

Initierar en ny instans av TcpChannel klassen, aktiverar endast en klientkanal och inte en serverkanal.

public:
 TcpChannel();
public TcpChannel();
Public Sub New ()

Exempel

Följande kodexempel visar hur du använder den här konstruktorn.

// Create the channel.
TcpChannel^ clientChannel = gcnew TcpChannel();
// Create the channel.
TcpChannel clientChannel = new TcpChannel();

Kommentarer

Den parameterlösa konstruktorn initierar alla fält till sina standardvärden. Om den parameterlösa konstruktorn används fungerar kanalen endast som en klientkanal och lyssnar inte på några portar.

Gäller för

TcpChannel(Int32)

Initierar en ny instans av TcpChannel klassen med en serverkanal som lyssnar på den angivna porten.

public:
 TcpChannel(int port);
public TcpChannel(int port);
new System.Runtime.Remoting.Channels.Tcp.TcpChannel : int -> System.Runtime.Remoting.Channels.Tcp.TcpChannel
Public Sub New (port As Integer)

Parametrar

port
Int32

Porten som serverkanalen lyssnar på.

Exempel

Följande kodexempel visar hur du använder den här metoden. Om du vill begära att en tillgänglig port tilldelas dynamiskt anger du parametern port till noll.

// Registers the server and waits until the user hits enter.
TcpChannel^ chan = gcnew TcpChannel( 8084 );
ChannelServices::RegisterChannel( chan );

RemotingConfiguration::RegisterWellKnownServiceType(
   Type::GetType( "HelloServer,server" ),
   "SayHello",
   WellKnownObjectMode::SingleCall );
System::Console::WriteLine( L"Hit <enter> to exit..." );
System::Console::ReadLine();
// Registers the server and waits until the user hits enter.
TcpChannel chan = new TcpChannel(8084);
ChannelServices.RegisterChannel(chan);

RemotingConfiguration.RegisterWellKnownServiceType(Type.GetType("HelloServer,server"),
                                                  "SayHello",
                                                   WellKnownObjectMode.SingleCall);
System.Console.WriteLine("Hit <enter> to exit...");
System.Console.ReadLine();
' Registers the server and waits until the user hits enter.
Dim chan As New TcpChannel(8084)
ChannelServices.RegisterChannel(chan)

RemotingConfiguration.RegisterWellKnownServiceType(Type.GetType("HelloServer,server"), "SayHello", WellKnownObjectMode.SingleCall)
System.Console.WriteLine("Hit <enter> to exit...")
System.Console.ReadLine()

Kommentarer

Om du vill begära att fjärrkommunikationssystemet väljer en öppen port åt dig anger du port 0 (noll). Detta skapar en TcpServerChannel instans för att lyssna efter begäranden på den dynamiskt tilldelade porten. Detta görs vanligtvis på klienten för att se till att en TcpServerChannel lyssnar efter motringningsmetoder.

Om 0 skickas till konstruktorn TcpChannel instansieras för att använda en kostnadsfri port.

Gäller för

TcpChannel(IDictionary, IClientChannelSinkProvider, IServerChannelSinkProvider)

Initierar en ny instans av TcpChannel klassen med de angivna konfigurationsegenskaperna och mottagare.

public:
 TcpChannel(System::Collections::IDictionary ^ properties, System::Runtime::Remoting::Channels::IClientChannelSinkProvider ^ clientSinkProvider, System::Runtime::Remoting::Channels::IServerChannelSinkProvider ^ serverSinkProvider);
public TcpChannel(System.Collections.IDictionary properties, System.Runtime.Remoting.Channels.IClientChannelSinkProvider clientSinkProvider, System.Runtime.Remoting.Channels.IServerChannelSinkProvider serverSinkProvider);
new System.Runtime.Remoting.Channels.Tcp.TcpChannel : System.Collections.IDictionary * System.Runtime.Remoting.Channels.IClientChannelSinkProvider * System.Runtime.Remoting.Channels.IServerChannelSinkProvider -> System.Runtime.Remoting.Channels.Tcp.TcpChannel
Public Sub New (properties As IDictionary, clientSinkProvider As IClientChannelSinkProvider, serverSinkProvider As IServerChannelSinkProvider)

Parametrar

properties
IDictionary

En IDictionary samling som anger värden för konfigurationsegenskaper som ska användas av klient- och serverkanalerna.

clientSinkProvider
IClientChannelSinkProvider

Implementeringen IClientChannelSinkProvider som ska användas av klientkanalen.

serverSinkProvider
IServerChannelSinkProvider

Implementeringen IServerChannelSinkProvider som ska användas av serverkanalen.

Undantag

En angiven kanalegenskap har formaterats felaktigt.

Exempel

Följande kodexempel visar hur du använder den här konstruktorn.

// Specify the properties for the server channel.
System::Collections::IDictionary^ dict = gcnew System::Collections::Hashtable;
dict[ "port" ] = 9090;
dict[ "authenticationMode" ] = "IdentifyCallers";

// Set up the server channel.
TcpChannel^ serverChannel = gcnew TcpChannel( dict,nullptr,nullptr );
ChannelServices::RegisterChannel( serverChannel );
// Specify the properties for the server channel.
System.Collections.IDictionary dict =
    new System.Collections.Hashtable();
dict["port"] = 9090;
dict["authenticationMode"] = "IdentifyCallers";

// Set up the server channel.
TcpChannel serverChannel = new TcpChannel(dict, null, null);
ChannelServices.RegisterChannel(serverChannel);

Kommentarer

Mer information om egenskaper för kanalkonfiguration finns i Konfigurationsegenskaper för kanal och formatering.

Kanalmottagare tillhandahåller ett plugin-program som ger åtkomst till underliggande meddelanden som flödar genom kanalen samt den ström som används av transportmekanismen för att skicka meddelanden till ett fjärrobjekt. Kanalmottagare ansvarar också för att transportera meddelanden mellan klienten och servern. Kanalmottagare länkas samman i en kedja och alla kanalmeddelanden flödar genom den här kedjan med mottagare innan meddelandet slutligen serialiseras och transporteras. Om du inte behöver mottagarfunktioner ställer du in parametrarna clientSinkProvider och serverSinkProvidernull.

Se även

Gäller för