Ich habe ein Client- und Server-Szenario, in dem ein Dienst auf dem Client und ein anderer Dienst auf dem Server installiert ist. Ich habe keine Probleme, wenn diese auf verschiedenen Rechnern installiert sind. Ich möchte jedoch auch in der Lage sein, den Client-Dienst und den Server-Dienst auf demselben Computer zu installieren. Ich könnte sie einrichten, um verschiedene Ports zu verwenden, jedoch möchte ich dies mit einem einzigen Port erreichen.Können zwei Anwendungen denselben WCF NetTcpBinding-Anschluss verwenden, wenn sie unterschiedliche Endpunktadressen verwenden?
Ich habe den Windows-Dienst "Net.Tcp Port Sharing Service" aktiviert und gestartet. Ich starte zuerst den Serverdienst. Wenn ich versuche, den Client-Dienst zu starten, erhalte ich die folgende Ausnahme beim Ausführen serviceHost.Open():
The TransportManager failed to listen on the supplied URI using the NetTcpPortSharing service: the URI is already registered with the service.
Unterhalb der Quellcode ist. Beide Server und Client verwenden unterschiedliche Adressen Endpunkt wie folgt:
Service-Server:
ServiceHost serviceHost = new ServiceHost(typeof(ServerService),
new Uri("net.tcp://localhost:50000");
NetTcpBinding binding = new NetTcpBinding();
serviceHost.AddServiceEndpoint(typeof(IServerService),
binding, "ServerService");
serviceHost.Open();
Client Service:
ServiceHost serviceHost = new ServiceHost(typeof(ClientService),
new Uri("net.tcp://localhost:50000");
NetTcpBinding binding = new NetTcpBinding();
serviceHost.AddServiceEndpoint(typeof(IClientService),
binding, "ClientService");
serviceHost.Open();
Diese Seite ist nicht mehr verfügbar. Teilen Sie hier Ihre Lösung. – cguedel