如何检查用户是否还在线ASP MVC

时间:2014-11-01 15:10:56

标签: asp.net-mvc session cookies session-cookies

我在网上写聊天 你自己写的全部 所以我写了Login,并设置了AuthCookie,我做了身份验证

现在我需要检查所有N次在线用户。

我在DataBase中有一个名为Users_Online的表(Id,User_Id) 当我登录时(或当我来聊天页面(如果我有Auth cookie) - 我在表Users_online中设置行。

但是当我外出时我怎么能删除行(不唱歌,只关闭标签/浏览器)??? 我尝试在Global.asax中使用Session_OnStart / Session_OnEnd - 但是最后(Session_OnEnd) - 不正确。

所以请帮助我们。

2 个答案:

答案 0 :(得分:0)

确定。我解决了我的问题(我希望))) 如果有人需要一个例子:

在Global.asax文件中,您需要有两种方法:

public void Session_OnStart()
{
    //here you do something
}
public void Session_OnEnd()
{
   //your logic 
}

在Web.Config中你需要写:

 <sessionState mode="InProc" cookieless="false" timeout="##Here you write timeout for session"></sessionState>
祝你好运

答案 1 :(得分:0)

如果你想做正确的尝试使用SignalR(signalr.net

当有人关闭浏览器时,Session_OnEnd不会触发:)