2009-06-24 16 views
2

Wie überprüfe ich, ob ein Benutzer noch aktiv ist, etwa jede Minute? Ich muss wissen, welcher Benutzer gerade aktiv ist und wer nicht! Ich verwende keinen ASP.NET-Mitgliedschaftsanbieter!Wie überprüft man, ob ein Benutzer noch aktiv ist?

Nehmen wir an, maximal 3 Logins sind erlaubt, damit sich ein Benutzer gleichzeitig von 3 verschiedenen Orten aus anmeldet, wenn derselbe User, der 4. loggt, sich erneut von einem anderen Ort aus einloggen möchte Blockieren Sie das 4. Einloggen.

Ich habe auch ein paar Fragen dazu! Wenn der Benutzer das Verbindungskabel abzieht oder den Browser schließt, wie finde ich heraus, ob der Benutzer noch aktiv ist?

Antwort

5

Ich würde mehr Details über genau das, was Sie erreichen möchten, benötigen, da Sie eine ziemlich vage Frage gestellt haben. Ich würde jedoch denken, der beste Weg, festzustellen, ob ein Benutzer aktiv ist, ist zu überprüfen, ob ihre ASP.NET-Sitzung noch am Leben ist. Es gibt keine "genaue" Möglichkeit, zu testen, ob ein Benutzer Ihre Website noch durchsucht, weil er dort lesen, AFK oder in einem anderen Programm auf seinem Computer sein könnte ... Dutzende, wenn nicht Hunderte von Szenarien könnten existieren auf der Client-Seite.

Die ASP.NET-Sitzung des Benutzers wird jedoch nur für einen bestimmten Zeitraum zwischen den einzelnen Aktivitäten des Benutzers (GET, POST usw.) ausgeführt. In der Regel bereinigt ASP.NET die Benutzersitzung nach 20 Minuten. Wenn dies der Fall ist, wird ein Session_End-Ereignis ausgelöst, das entweder in Global.asax oder mit einem benutzerdefinierten HttpModule behandelt werden kann. Sie könnten dann diesen Benutzer in Ihrer eigenen Datenbank als inaktiv markieren, eine E-Mail senden oder tun, was immer Sie tun müssen.

+0

danke für Ihre Antwort trotzdem! Ich habe meine eigene Lösung gefunden !! –

+0

Was war Ihre Lösung? –

Verwandte Themen