2010-06-10 47 views
2

在我的項目我要實現它顯示了特定用戶是否在線與否作爲社交網站(如Orkut和Facebook)的這個查找用戶是否在線

+0

請更詳細的?你計劃使用什麼環境/語言等? – liquidleaf 2010-06-10 18:38:43

+0

問題是...? – 2010-06-10 18:39:04

+0

我想他想知道如何... – 2010-06-10 18:39:28

回答

1

如果您使用ASP.NET和成員資格提供程序有一堆不同的實現。這裏是一個鏈接到一個:

http://blog.dreamlabsolutions.com/post/2009/07/13/ASPNET-Membership-Show-list-of-users-online.aspx

如果你沒有,那麼你將需要存儲,當用戶登錄到系統,並跟蹤每次他們是「主動」的地方。我已經使用全局緩存完成了它,但它確實只適用於單服務器解決方案。如果您想使用多臺服務器,則需要遷移到數據庫存儲,但這幾乎是ASP.NET會員資格以很少的代碼爲您提供的開箱即用功能。

您可以選擇如何寫入數據存儲區(如緩存),並根據您想要的時間(如特定時間段的非活動時間,Session_End事件,註銷命令等等)過期「會話」。

0

的一種方式將是一個接口在用戶表中保留一個標誌並在用戶登錄時將其設置爲在線,並且可以實現反映該標誌的界面。

+0

請再次清除 – picnic4u 2010-06-10 18:40:36

+1

會有一張表供用戶使用。該表將有一個名爲IsOnline(位域)的條目。每當用戶上線時,該值將被設置爲1,並且當會話到期/用戶註銷時,該值將被設置爲0.使用此值可以顯示用戶是否在線/不 – Chinjoo 2010-06-10 18:45:31

1

您必須使用的機制是應用程序中的Session_Start和Session_End事件。爲了可靠地調用結束事件,請在用戶註銷時使用Session.Abandon方法。