************************************在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

Asp.Net实现记录历史访问人数和当前在线人数的更多相关文章

  1. Asp.Net 网站访问人数及在线人数

    利用Application对象和Session对象可以统计历史访问人数和当前在线人数. 在会话开始和结束时,一定要进行加锁和解锁操作.由于多个用户可以共享Application对象,因此加锁是必要的, ...

  2. C#统计网站访问总人数和当前在线人数

    一.打开vitualstudio2010,新建一个网站,然后添加新项,新建一个login.aspx和index.aspx页面.再添加新项,选择全局应用程序类,该页面为Global.asax. 第一步: ...

  3. C#统计网站访问总人数和当前在线人数 Application

    一.打开vitualstudio2010,新建一个网站,然后添加新项,新建一个login.aspx和index.aspx页面.再添加新项,选择全局应用程序类,该页面为Global.asax. 第一步: ...

  4. C# 统计在线人数和总访问人数

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  5. ASP.NETCore学习记录(一)

    ASP.NETCore学习记录(一) asp.net core介绍  Startup.cs  ConfigureServices  Configure  0. ASP.NETCore 介绍 ASP.N ...

  6. history 清空历史记录 或 history不记录历史命令

    # vi ~/.bash_history 清空里面的记录,并退出当前shell # exit(一定要退出当前shell) # history 1 vi ~/.bash_history 2 histor ...

  7. IIS7 ASP.NET 未被授权访问所请求的资源

    IIS7 ASP.NET 未被授权访问所请求的资源 ASP.NET 未被授权访问所请求的资源.请考虑授予 ASP.NET 请求标识访问此资源的权限. ASP.NET 有一个在应用程序没有模拟时使用的基 ...

  8. ASP.NET 未被授权访问所请求的资源。请考虑授予 ASP.NET 请求标识访问此资源的权限

    开发了一个导入TXT文件的功能,执行过程中出错.提示:.....ASP.NET 未被授权访问所请求的资源.请考虑授予 ASP.NET 请求标识访问此资源的权限.ASP.NET 有一个在应用程序没有模拟 ...

  9. JS基于时间戳写的浏览访问人数

    Title:JS基于时间戳写的浏览访问人数  --2013-12-23 14:07 <script language="JavaScript"> var timesta ...

随机推荐

  1. Yii的缓存机制之页面缓存

    页面缓存是不能通过片段缓存来实现的,因为布局和内容不能同时缓存.只能通过过滤器来生成缓存. 实现方法: 在控制器里使用过滤器来实现 function filters (){ return array( ...

  2. 使用openssl的aes各种加密算法

    #include <stdio.h> #include <string.h> #include <sys/types.h> #include <sys/sta ...

  3. 为什么在启动linux后进入终端提示sh-3.2#

    这是Linux系统环境变量设置问题,用户登陆后确保是root权限,可以用如下这两条命令解决:-bash-3.2# cp /etc/skel/.{bash_profile,bashrc} ~-bash- ...

  4. Windows Vista for Developers——第四部分:用户帐号控制(User Account Control,UAC)

    作者:Kenny Kerr 翻译:Dflying Chen 原文:http://weblogs.asp.net/kennykerr/archive/2006/09/29/Windows-Vista-f ...

  5. java 02 内部类

  6. Google浏览器如何加载本地文件

    Chrome浏览器加载本地文件 一般来说,为了安全起见,浏览器是不能通过load方法来加载本地文件的,load方法只能加载远程服务器上的文件. 在浏览器默认的情况下,试图加载一个本地文件,会出现交叉域 ...

  7. java命令行从编译到打jar包到执行

     目录: 一. javac编译     1. 没有额外的jar包     2. 包含额外的jar包 二. jar打jar包 三. java运行     1. java命令执行     2. jar包执 ...

  8. 2.4 hive创建表实例讲解

    一.create table ## 员工表 create table IF NOT EXISTS default.emp( empno int, ename string, job string, m ...

  9. C# in查询

    一.前言 在做项目中,我们会经常使用到 in 查询语句.那么如果我们用 EF 和 Linq 怎么写?接下来看代码 二.实例 我使用的是区域查询的例子,基本的 sql 语句如下: SELECT * FR ...

  10. 使用Try.NET创建可交互.NET文档

    原文地址:Create Interactive .NET Documentation with Try .NET 原文作者:Maria 译文地址:https://www.cnblogs.com/lwq ...