使用 Membership 时获取用户的最后登录时间


在用户登录的过程中会更新数据库中的最后登录时间,因此如果想获取用户的最后登录时间必须在 ASP.NET framework 的登录进程更新之前获取它。

有一种快速且简单的方法获取这个时间,那就是处理 Login 控件的 Authenticate 事件。

页面代码如下:
<asp:Login ID="Login1" runat="server" 
  OnAuthenticate
="Login1_Authenticate" 
  VisibleWhenLoggedIn
="False">
</asp:Login>

cs文件中编写如下内容:
protected void Login1_Authenticate(object sender, AuthenticateEventArgs e)
{
    Login login 
= (Login)sender; 

    MembershipUser user 
= Membership.GetUser(login.UserName);
    DateTime dtLastLogin 
= user.LastLoginDate;

    
// Attempt to validate user -- if success then 
    
// set the authenticated flag so that the framework
    
// knows to allow the user access
    if (Membership.ValidateUser(login.UserName, login.Password))
    {
        Session[
"LastLoginDate"= dtLastLogin;
        e.Authenticated 
= true;
    }





posted on 2006-10-27 15:05  Easy Company  阅读(773)  评论(0编辑  收藏  举报

导航