TcpChannel Konstruktoren
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Initialisiert eine neue Instanz der TcpChannel-Klasse.
Überlädt
| Name | Beschreibung |
|---|---|
| TcpChannel() |
Initialisiert eine neue Instanz der TcpChannel Klasse, wobei nur ein Clientkanal und kein Serverkanal aktiviert wird. |
| TcpChannel(Int32) |
Initialisiert eine neue Instanz der TcpChannel Klasse mit einem Serverkanal, der auf den angegebenen Port lauscht. |
| TcpChannel(IDictionary, IClientChannelSinkProvider, IServerChannelSinkProvider) |
Initialisiert eine neue Instanz der TcpChannel Klasse mit den angegebenen Konfigurationseigenschaften und Senken. |
TcpChannel()
Initialisiert eine neue Instanz der TcpChannel Klasse, wobei nur ein Clientkanal und kein Serverkanal aktiviert wird.
public:
TcpChannel();
public TcpChannel();
Public Sub New ()
Beispiele
Das folgende Codebeispiel zeigt, wie dieser Konstruktor verwendet wird.
// Create the channel.
TcpChannel^ clientChannel = gcnew TcpChannel();
// Create the channel.
TcpChannel clientChannel = new TcpChannel();
Hinweise
Der parameterlose Konstruktor initialisiert alle Felder mit ihren Standardwerten. Wenn der parameterlose Konstruktor verwendet wird, funktioniert der Kanal nur als Clientkanal und überwacht keine Ports.
Gilt für:
TcpChannel(Int32)
Initialisiert eine neue Instanz der TcpChannel Klasse mit einem Serverkanal, der auf den angegebenen Port lauscht.
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)
Parameter
- port
- Int32
Der Port, an dem der Serverkanal lauscht.
Beispiele
Im folgenden Codebeispiel wird die Verwendung dieser Methode veranschaulicht. Um anzufordern, dass ein verfügbarer Port dynamisch zugewiesen wird, legen Sie den port Parameter auf Null fest.
// 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()
Hinweise
Um anzufordern, dass das Remotingsystem einen offenen Port in Ihrem Auftrag auswäht, geben Sie Port 0 (Null) an. Dadurch wird eine TcpServerChannel Instanz erstellt, die auf Anforderungen des dynamisch zugewiesenen Ports lauscht. Dies erfolgt in der Regel auf dem Client, um sicherzustellen, dass eine TcpServerChannel Rückrufmethode überwacht wird.
Wenn 0 an den Konstruktor übergeben wird, wird der TcpChannel Instanziiert, um einen kostenlosen Port zu verwenden.
Gilt für:
TcpChannel(IDictionary, IClientChannelSinkProvider, IServerChannelSinkProvider)
Initialisiert eine neue Instanz der TcpChannel Klasse mit den angegebenen Konfigurationseigenschaften und Senken.
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)
Parameter
- properties
- IDictionary
Eine IDictionary Auflistung, die Werte für Konfigurationseigenschaften angibt, die von den Client- und Serverkanälen verwendet werden sollen.
- clientSinkProvider
- IClientChannelSinkProvider
Die IClientChannelSinkProvider Implementierung, die vom Clientkanal verwendet werden soll.
- serverSinkProvider
- IServerChannelSinkProvider
Die IServerChannelSinkProvider Implementierung, die vom Serverkanal verwendet werden soll.
Ausnahmen
Eine bereitgestellte Kanaleigenschaft wurde nicht ordnungsgemäß formatiert.
Beispiele
Das folgende Codebeispiel zeigt, wie dieser Konstruktor verwendet wird.
// 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);
Hinweise
Kanalsenken bieten einen Plug-In-Punkt, der den Zugriff auf die zugrunde liegenden Nachrichten ermöglicht, die über den Kanal fließen, sowie den Datenstrom, der vom Transportmechanismus zum Senden von Nachrichten an ein Remoteobjekt verwendet wird. Kanalsenken sind auch für den Transport von Nachrichten zwischen dem Client und dem Server verantwortlich. Kanalsenken sind in einer Kette miteinander verknüpft, und alle Kanalnachrichten fließen durch diese Kette von Senken, bevor die Nachricht schließlich serialisiert und transportiert wird. Wenn Sie keine Sinkfunktionalität benötigen, legen Sie die Und-Parameter clientSinkProviderserverSinkProvider auf null.