TcpChannel Constructors

Definitie

Initialiseert een nieuw exemplaar van de TcpChannel klasse.

Overloads

Name Description
TcpChannel()

Initialiseert een nieuw exemplaar van de TcpChannel klasse, waarbij alleen een clientkanaal wordt geactiveerd en geen serverkanaal.

TcpChannel(Int32)

Initialiseert een nieuw exemplaar van de TcpChannel klasse met een serverkanaal dat luistert op de opgegeven poort.

TcpChannel(IDictionary, IClientChannelSinkProvider, IServerChannelSinkProvider)

Initialiseert een nieuw exemplaar van de TcpChannel klasse met de opgegeven configuratie-eigenschappen en sinks.

TcpChannel()

Initialiseert een nieuw exemplaar van de TcpChannel klasse, waarbij alleen een clientkanaal wordt geactiveerd en geen serverkanaal.

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

Voorbeelden

In het volgende codevoorbeeld ziet u hoe u deze constructor gebruikt.

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

Opmerkingen

De constructor zonder parameter initialiseert alle velden naar de standaardwaarden. Als de parameterloze constructor wordt gebruikt, functioneert het kanaal alleen als een clientkanaal en luistert het niet op poorten.

Van toepassing op

TcpChannel(Int32)

Initialiseert een nieuw exemplaar van de TcpChannel klasse met een serverkanaal dat luistert op de opgegeven poort.

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)

Parameters

port
Int32

De poort waarop het serverkanaal luistert.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe u deze methode gebruikt. Als u wilt aanvragen dat een beschikbare poort dynamisch wordt toegewezen, stelt u de port parameter in op nul.

// 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()

Opmerkingen

Als u wilt aanvragen dat het externe systeem namens u een open poort kiest, geeft u poort 0 (nul) op. Hiermee maakt u een TcpServerChannel exemplaar om te luisteren naar aanvragen op de dynamisch toegewezen poort. Dit wordt meestal gedaan op de client om ervoor te zorgen dat er TcpServerChannel wordt geluisterd naar callback-methoden.

Als 0 wordt doorgegeven aan de constructor, wordt de TcpChannel instantie geïnstantieerd om een gratis poort te gebruiken.

Van toepassing op

TcpChannel(IDictionary, IClientChannelSinkProvider, IServerChannelSinkProvider)

Initialiseert een nieuw exemplaar van de TcpChannel klasse met de opgegeven configuratie-eigenschappen en sinks.

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)

Parameters

properties
IDictionary

Een IDictionary verzameling die waarden opgeeft voor configuratie-eigenschappen die moeten worden gebruikt door de client- en serverkanalen.

clientSinkProvider
IClientChannelSinkProvider

De IClientChannelSinkProvider implementatie die moet worden gebruikt door het clientkanaal.

serverSinkProvider
IServerChannelSinkProvider

De IServerChannelSinkProvider implementatie die moet worden gebruikt door het serverkanaal.

Uitzonderingen

Een opgegeven kanaaleigenschap is onjuist opgemaakt.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe u deze constructor gebruikt.

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

Opmerkingen

Zie Eigenschappen van kanaal- en formatterconfiguratie voor meer informatie over eigenschappen van kanaalconfiguratie.

Kanaalsinks bieden een invoegtoepassing die toegang biedt tot de onderliggende berichten die via het kanaal stromen, evenals de stroom die door het transportmechanisme wordt gebruikt om berichten naar een extern object te verzenden. Kanaalsinks zijn ook verantwoordelijk voor het transport van berichten tussen de client en de server. Kanaalsinks worden aan elkaar gekoppeld in een keten en alle kanaalberichten stromen door deze keten van sinks voordat het bericht definitief wordt geserialiseerd en vervoerd. Als u geen sinkfunctionaliteit nodig hebt, stelt u de clientSinkProvider en serverSinkProvider parameters in op null.

Zie ook

Van toepassing op