Wie kann ich eine Art von Standortkennung für alle verbundenen Clients für einen Servicehost aufzählen? Ich verwende eine Duplex-Verbindung für lange laufende Berechnungen. Der Service-Host ist ein Singleton.Abrufen einer Liste verbundener Clients für einen WCF-Dienst
Ich kann (in .net 3.5) die IP des anrufenden Kunden herausfinden, aber ich bin unsicher, wie man die IP aller verbundenen Klienten erhält.
Entschuldigung, ich war nicht klar in meinem Beitrag, aber ich verwende nicht das Standard-Service-Verhalten. [ServiceBehavior (InstanceContextMode = InstanceContextMode.Single, ConcurrencyMode = ConcurrencyMode.Multiple)] Mit InstanceContexMode.Single gibt es eine Instanz mit einer längeren Lebensdauer als der Standardmodus "pro Aufruf". Der implementierte Dienst verwendet derzeit einen Rückrufvertrag, um die Ergebnisse zu senden, wenn sie fertig sind. Der Client speichert seine Verbindung mit dem Server im Cache, damit sie für mehrere Anforderungen verwendet werden können. Die Verbindungen sind langwierig. – Sindhudweep
OK - Ich denke nicht, dass das eine sehr gute Idee ist, aber ich kenne die Details Ihrer Einrichtung nicht; Leider gibt es in WCF 3.5 nicht viel Unterstützung für Management und Überwachung - dies wird Teil des "Dublin" -Projekts sein - ein Management-Add-on für IIS7/WAS, das einige Zeit nach .NET 4 (März 2010) ausgeliefert werden soll). –