zoukankan      html  css  js  c++  java
  • .NET基础之网站访问统计计数器

    使用Global.asax全局变量可以避免刷新页面导致计数器刷新。

    void Application_Start(object sender, EventArgs e)
       {
           //在应用程序启动时运行的代码,IIS重新启动时刷新计数器。
           Application["count"] = 0;
       }

    void Session_Start(object sender, EventArgs e)
       {
           //在新会话启动时运行的代码,会话建立,计数器+1,防止错误先锁定后解锁。重复刷新页面不会更改计数器,只有建立新会话才可以。
           Application.Lock();
           Application["count"] = (int)Application["count"] + 1;
           Application.UnLock();
       }

    void Session_End(object sender, EventArgs e)
       {
           //在会话结束时运行的代码。此处主要是用来统计在线人数,如只需要计数,可以不需要此处代码。 
           // 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为
           // InProc 时,才会引发 Session_End 事件。如果会话模式
           //设置为 StateServer 或 SQLServer,则不会引发该事件。
           Application.Lock();
           Application["count"] = (int)Application["count"] - 1;
           Application.UnLock();
       }

    protected void Page_Load(object sender, EventArgs e)
        {

            //页面中直接使用Application["count"]。
            Response.Write("你是本网站第"+Application["count"]+"个访问者");
        }

    注意:Application与Session的区别。前者为应用程序的变量,后者为会话的变量。则前者保持时间长,不得乱用。

    命运负责洗牌,但是玩牌的是我们自己!
  • 相关阅读:
    4.Eclipse下的Hadoop开发实践
    6.命令行编译打包运行五个MapReduce程序
    1.Hadoop初步环境搭建(ssh无密码通信)
    webkit中对incomplete type指针的处理技巧
    Windows平台编译Webkit
    利用Webkit抓取动态网页和链接
    用C#实现网络爬虫(一)
    C#中delegate对象Equals方法简析
    Webkit客户端进程解析
    用C#实现网络爬虫(二)
  • 原文地址:https://www.cnblogs.com/shanymen/p/1456253.html
Copyright © 2011-2022 走看看