2010-10-13 24 views
0

我有一個嵌套在loginview中的日誌控件。當我點擊註銷鏈接,我的方法`asp.net會員控件,登錄時不會調用Login1_LoggingOut

protected void LoginStatus1_LoggingOut(object sender, EventArgs e) 
     { 
      Guid guidUserId = AuthenticatedUser.LoginUserID; 
      if (guidUserId != new Guid()) 
      { 
       PortalDataContext db = new PortalDataContext(AuthenticatedUser.ConnectionString); 
       var user = AuthenticatedUser.GetUser(guidUserId); 
       if (user != null) 
       { 
        user.LastActivityDate = user.LastActivityDate.AddMinutes(-16); 

        db.SubmitChanges(); 
       } 
      } 
     } 

` 永遠不會被調用。我認爲這與在登錄視圖中嵌套控件有關。我怎樣才能解決這個問題,以便我可以更新數據庫?我需要將用戶上次活動窗口重置爲16分鐘前,以便我可以判斷用戶是否仍在系統中並處於非活動狀態,或者是否已完全註銷。

+0

你能告訴我們LoginStatus控件的聲明標記嗎?您可以設置一個屬性,使其呈現爲超鏈接而不是LinkBut​​ton - 在這種情況下,用戶註銷時不會回發。 – 2010-11-16 17:47:45

回答

0

試過這個,它爲我工作。你確定你的活動是有線的嗎?

<asp:LoginView runat="server"> 
     <LoggedInTemplate> 
      <asp:LoginStatus ID="LoginStatus1" runat="server" 
       LogoutAction="Redirect" LogoutPageUrl="Login.aspx" OnLoggingOut="LoginStatus1_LoggingOut" /> 
     </LoggedInTemplate> 
    </asp:LoginView>