Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 检查所有客户端与wcf服务的连接_C#_Wcf_Service_Connection - Fatal编程技术网

C# 检查所有客户端与wcf服务的连接

C# 检查所有客户端与wcf服务的连接,c#,wcf,service,connection,C#,Wcf,Service,Connection,我有连接多个客户端的wcf服务。如果其中一个需要断开连接,则结束代理会话,通知其他用户等 但有时客户端会不恰当地断开与wcf服务的连接(例如,用户结束其进程)。 如何检测此客户端已断开连接并通知其他客户端?由于客户端突然断开连接,如果客户端已断开连接,您将无法在服务端了解,因此您必须手动断开用户的连接 为此,您需要在会话对象中添加LastAccessTime属性。一旦这个角色就位,您将不得不编写一个后台工作人员角色,该角色将根据LastAccessTime断开会话。在每个请求中,您将使用当前时间

我有连接多个客户端的wcf服务。如果其中一个需要断开连接,则结束代理会话,通知其他用户等

但有时客户端会不恰当地断开与wcf服务的连接(例如,用户结束其进程)。
如何检测此客户端已断开连接并通知其他客户端?

由于客户端突然断开连接,如果客户端已断开连接,您将无法在服务端了解,因此您必须手动断开用户的连接

为此,您需要在会话对象中添加
LastAccessTime
属性。一旦这个角色就位,您将不得不编写一个后台工作人员角色,该角色将根据
LastAccessTime
断开会话。在每个请求中,您将使用当前时间更新此时间


希望这有帮助。

由于客户端突然断开连接,如果客户端断开连接,您将无法从服务端了解,因此您必须手动断开用户的连接

为此,您需要在会话对象中添加
LastAccessTime
属性。一旦这个角色就位,您将不得不编写一个后台工作人员角色,该角色将根据
LastAccessTime
断开会话。在每个请求中,您将使用当前时间更新此时间


希望这有帮助。

请在此处添加更多上下文。你用什么装订?合同是什么?如何检测“正确”的断开连接?这将有助于人们理解您的问题。您是否在不同的客户端之间维护会话对象?@oleksii正确的断开连接是指将要断开连接的用户发送广播简单消息列表枚举“ActionType.disconnect”。问题是当进程突然关闭,它并没有时间调用此广播()@amarplaspure会话仅在客户端和服务之间。不是在所有客户之间。也许这个问题的答案可以帮助您:[[1]:请在这里添加更多上下文。您使用什么绑定?合同是什么?如何检测“适当的”断开连接?这将帮助人们理解您的问题。您是否在不同的客户端之间维护会话对象?@oleksii正确的断开连接是指将要断开连接的用户发送广播简单消息列表枚举“ActionType.disconnect”。问题是当进程突然关闭并且没有时间调用此广播时()@amarplaspure会话仅在客户端和服务之间。而不是在所有客户端之间。也许此问题的答案可以帮助您:[[1]: