| 

.NET C# Java Javascript Exception

2
Hallo Community,

ich lasse eine WinServic laufen, der eine Kommunikationsschnittstelle via WCF zur Verfügung stellt.

Ich initialisiere dabei den WCF-Host mit
_host = new ServiceHost(typeof(EntityHost));
_host.AddServiceEndpoint(typeof(IEntityHost), new NetTcpBinding(), "net.tcp://192.168.1.101:60000/MyService");
_host.Open();


Ein anschließendes "netstat" zeigt, dass der Service generell nur auf 127.0.0.1:60000 lauscht.
Ändere ich den Port im Source und lasse den Service wieder laufen, so wird die Änderung des Ports berücksichtigt, nicht jedoch eine Änderung der IP.

Da ich jedoch den Service nicht über Localhost konsumieren möchte, sondern über LAN / WAN, hätte ich die Frage, ob ich generell einen Fehler bei der Zuweisung des Endpoints mache, oder in welcher Richtung ich recherchieren muss, um dieses Problem zu lösen.

Danke vorab,
Christian
News:
17.06.2011
Gast
41 1
1 Antwort
1
Hallo,

Du kannst beim Instanzieren des ServiceHost folgendes versuchen (using würde sich ebenfalls empfehlen, wegen des damit verbundenen automatischen Aufrufes von Dispose() am Ende):

Type serviceType = typeof(EntityHost);
Uri serviceUri = new Uri("net.tcp://192.168.1.101:60000/");
using (ServiceHost _host = new ServiceHost(serviceType, serviceUri))
{
_host.AddServiceEndpoint(typeof(IEntityHost),
new NetTcpBinding(), "net.tcp://192.168.1.101:60000/MyService");
//...
}


Also beim Initialisieren des ServiceHost, die Base Uri mit übergeben. Grundlagen finden sich ganz gut erklärt hier (als Ausgangspunkt für weitere Recherchen):

http://www.devx.com/codemag/Article/33655/1763/page/2

Grüße
Maria
17.06.2011
Maria Simlinger 864 8

Stelle deine .net-Frage jetzt!