c# - 了解用户是否已从 C#/.NET 应用程序连接

标签 c# mysql .net

我正在开发一个允许用户拥有个人资料的应用程序......

出于安全原因,我想拒绝连接到已经连接的用户,这意味着如果用户从一台机器连接,他不能从另一台机器连接,有些人可能会说 cookie 和 session ,但我使用的是“应用程序”不是网站。

现在,我在我的数据库中添加了一列名为“IsConnected”的用户表,因此在登录之前,应用程序检查此列是否设置为 1 或 0,并根据此值允许或拒绝与此用户的连接,它正在工作,但并不完美。如果用户在没有断开连接的情况下关闭应用程序,则该列不会设置为 0,因此用户始终处于连接状态。

我希望你们能告诉我另一种做事的方法,因为我是这个领域的新手,我需要你们的帮助。

最佳答案

我怀疑桌面应用程序是否有任何 cookie,它是为了在浏览器中保留一些数据,没有它你可以在你的应用程序中保留任何数据。
在数据库中,您可以存储上次用户事件的日期和时间以及一些设备标识符,例如 mac address .连接的应用程序应该刷新该信息,例如每小时刷新一次,如果用户在两个或更多小时前连接过,他将断开连接并可以从不同的设备再次连接。他也应该能够明确地断开连接,但万一应用程序崩溃或 pc 重新启动或者谁知道发生了什么,它必须断开用户,这些用户已经有一段时间没有进行服务器事件了。

关于c# - 了解用户是否已从 C#/.NET 应用程序连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25006926/

相关文章:

mysql - Pentaho 将唯一记录导入数据库

c# - 如何用表达式参数实现方法c#

.net - 实际解决阶乘复杂性问题(调度程序)

c# - 当工作线程和UI线程调用同一方法(包括调用ui控件)时出现死锁

php $_POST 数组并更新 MySQL

c# - 如何获取管道RunID

php - 如何将变量从 PHP 传递到 Flash (ActionScript 3)

.net - Log4Net EventLogAppender 未记录到自定义事件日志

c# - 异步方法将控制权来回切换到下一个异步方法

c# - OpenCV - 如何检测和测量两帧之间的角度?