2012-03-29 9 views
3

Ich habe gesetzt UserIsOnlineTimeWindow = "2" in web.config dann meiner logout() Funktion alsUser.IsOnline = true auch nach FormsAuthentication.SignOut()

modifiziert wurde
public ActionResult LogOff() 
    { 

     MembershipUser usr = Membership.GetUser(); 
     usr.LastActivityDate = DateTime.Now.AddMinutes(-2); 
     FormsAuthentication.SignOut(); 
     return RedirectToAction("Index", "Home"); 
    } 

Noch nach nach der Rückkehr zum Haupt Logout die noch User.IsOnline = true

Erst nach Leerlaufzeit von 2 Minuten User.IsOnline = false

Wie der Benutzer offline bei FormsAuthentication.SignOut machen(); Bitte helfen Sie.

Antwort

4

Nicht sicher, ob SignOut auch als Aktivität betrachtet wird.

Ich empfehle Ihnen, das LastActivityDate nach der SignOut-Methode festzulegen. Und vergessen Sie nicht, die Benutzerinformationen zu aktualisieren.

wie folgt aus:

MembershipUser usr = Membership.GetUser(false); 
FormsAuthentication.SignOut(); 
usr.LastActivityDate = DateTime.Now.AddMinutes(-2); 
Membership.UpdateUser(usr); 

ich in meiner App gerade getestet, es funktioniert.

+0

danke es funktioniert nach dem Hinzufügen Membership.UpdateUser (usr); –

+0

Sie sind herzlich willkommen :) –

Verwandte Themen