zoukankan      html  css  js  c++  java
  • Asp.Net实现记录历史访问人数和当前在线人数

    ************************************在Global.asax中如下************************

    <%@ Import Namespace="System.Data.SqlClient" %>
    起始:

    void Application_Start(Object sender, EventArgs e)//当前应用程序启动这件事会发生
            {

          //SqlConnection con = new SqlConnection();       

          //con.ConnectionString = ConfigurationManager.ConnectionStrings["TongJiConnectionString"].ConnectionString;


                SqlConnection con=new SqlConnection("server=.;database=countPeople;uid=sa;pwd=;");
                con.Open();
                SqlCommand cmd=new SqlCommand("select * from countPeople",con);
                int count=Convert.ToInt32(cmd.ExecuteScalar());
                con.Close();
                Application["total"]=count;//Application是个全局变量,每个会话都可对他操作
                Application["online"]=0;
                

            }
     
            protected void Session_Start(Object sender, EventArgs e)//客户端一连接到服务器上,这个事件就会发生
            {
                Session.Timeout=1;
                Application.Lock();//锁定后,只有这个Session能够会话
                Application["total"]=(int)Application["total"]+1;
                Application["online"]=(int)Application["online"]+1;
                Application.UnLock();//会话完毕后解锁

            }

    结尾:
    void Session_End(Object sender, EventArgs e)
            {
                Application.Lock();
                Application["online"]=(int)Application["online"]-1;
                Application.UnLock();

            }

            protected void Application_End(Object sender, EventArgs e)
            {

            //SqlConnection con = new SqlConnection();       

             //con.ConnectionString = ConfigurationManager.ConnectionStrings["TongJiConnectionString"].ConnectionString; 


                SqlConnection con=new SqlConnection("server=.;database=countPeople;uid=sa;pwd=;");
                con.Open();
                SqlCommand cmd=new SqlCommand("update countPeople set num="+Application["total"],con);
                cmd.ExecuteNonQuery();
                con.Close();

            }

    *****************************************在Aspx文件中如下*********************************
    void Page_Load(object sender, System.EventArgs e)
            {
                this.lblTotal.Text=Application["total"].ToString();
                this.lblOnline.Text=Application["online"].ToString();
                // 在此处放置用户代码以初始化页面
            }
    分类: ASP.NET
  • 相关阅读:
    【网易官方】极客战记(codecombat)攻略-森林-加农炮之舞forest-cannon-dancing
    【网易官方】极客战记(codecombat)攻略-森林-森林慢跑forest-jogging
    https://developer.android.com/codelabs/java-to-kotlin
    今日英语
    架构师技能图谱
    java接口防重提交如何处理
    看看人家那后端API接口写得,那叫一个优雅!
    MySQL不推荐使用uuid或者雪花id作为主键
    “12306”是如何支撑百万QPS的?
    阿里巴巴为什么能抗住90秒100亿?看完这篇你就明白了!
  • 原文地址:https://www.cnblogs.com/joean/p/4415117.html
Copyright © 2011-2022 走看看