asp.net 在线人数统计

将Session的状态配置成如下:
< sessionState mode = " InProc " ></ sessionState >

在项目中选择“添加新项”,添加“Global.asax”全局变量文件,修改其中的 Session_Start 和 Session_End 方法;代码如下: 
void  Session_Start( object  sender, EventArgs e)
    {
        
//  在新会话启动时运行的代码
        Session.Timeout  =   5 // 设置Session的有效时间,可根据需要修改
        Application.Lock();
        Application[
" zzzonline " =  Convert.ToInt32(Application[ " zzzonline " ])  +   1 ;
        Application.UnLock();
    }


     void  Session_End( object  sender, EventArgs e)
    {
        
//  在会话结束时运行的代码。
        
//  注意: 只有在 Web.config 文件中的 sessionstate 模式设置为
        
//  InProc 时,才会引发 Session_End 事件。如果会话模式设置为 StateServer
        
//  或 SQLServer,则不会引发该事件。
        Application.Lock();
        Application[
" zzzonline " =  Convert.ToInt32(Application[ " zzzonline " ])  -   1 ;
        Application.UnLock();
    }


这样就可以在.aspx页面调用了;

< asp:Label ID = " Label1 "  runat = " server " > 当前在线 & nbsp; < font color = red ><%= Application[ " zzzonline " ] %></ font >& nbsp; 人 </ asp:Label >



转自:http://www.cnblogs.com/xiaopeng84/archive/2007/01/23/627630.html

你可能感兴趣的:(asp.net)