zoukankan      html  css  js  c++  java
  • 通过在Global.asax文件中配置Application来统计的方法

    这是通过在Global.asax文件中配置Application来统计的方法......


    using System;
    using System.Collections;
    using System.ComponentModel;
    using System.Web;
    using System.Web.SessionState;
    using System.IO ;

    namespace movie
    {
    /// <summary>
    /// Global 的摘要说明。
    /// </summary>
    public class Global : System.Web.HttpApplication
    {
       /// <summary>
       /// 必需的设计器变量。
       /// </summary>
       private System.ComponentModel.IContainer components = null;

       public Global()
       {
        InitializeComponent();
       }
     
       protected void Application_Start(Object sender, EventArgs e)
       {
                 Application["conn"]="Server=localhost;database=movie;uid=sa;pwd='zcc';";
        Application["user_sessions"] = 0;
        Application["counter_num"]=0;


        uint count=0;
        StreamReader srd;
        //取得文件的实际路径
        string file_path=Server.MapPath ("counter.txt");
        //打开文件进行读取
        srd=File.OpenText (file_path);
        while(srd.Peek ()!=-1)
        {
         string str=srd.ReadLine ();
         count=UInt32.Parse (str);
        }
        object obj=count;
        Application["counter"]=obj;
        srd.Close ();

       }

       protected void Session_Start(Object sender, EventArgs e)
       {
        Application.Lock();
        Application["user_sessions"] = (int)Application["user_sessions"] + 1;
        Application.UnLock();

        Application.Lock ();
        //数值累加,注意这里使用了装箱(boxing)
        uint jishu=0;
        jishu=(uint)Application["counter"];
        jishu=jishu+1;
        object obj=jishu;
        Application["counter"]=obj;
        //将数据记录写入文件
        string file_path=Server.MapPath ("counter.txt");
        StreamWriter fs=new StreamWriter(file_path,false);
        fs.WriteLine (jishu);
        fs.Close ();
        Application.UnLock ();


       }

       protected void Application_BeginRequest(Object sender, EventArgs e)
       {

    //    Application.Lock();
    //    Application["counter_num"]=(int)Application["counter_num"]+1;
    //    Application.UnLock();

       }

       protected void Application_EndRequest(Object sender, EventArgs e)
       {

       }

       protected void Application_AuthenticateRequest(Object sender, EventArgs e)
       {

       }

       protected void Application_Error(Object sender, EventArgs e)
       {

       }

       protected void Session_End(Object sender, EventArgs e)
       {
        Application.Lock();
        Application["user_sessions"] = (int)Application["user_sessions"] - 1;
        Application.UnLock();

       }

       protected void Application_End(Object sender, EventArgs e)
       {

        uint js=0;
        js=(uint)Application["counter"];
        //object obj=js;
        //Application["counter"]=js;
        //将数据记录写入文件
        string file_path=Server.MapPath ("counter.txt");
        StreamWriter fs=new StreamWriter(file_path,false);
        fs.WriteLine(js);
        fs.Close ();


       }
      
       #region Web 窗体设计器生成的代码
       /// <summary>
       /// 设计器支持所需的方法 - 不要使用代码编辑器修改
       /// 此方法的内容。
       /// </summary>
       private void InitializeComponent()
       {   
        this.components = new System.ComponentModel.Container();
       }
       #endregion
    }
    }

  • 相关阅读:
    2804 最大最小数质因数
    5429 多重背包
    1851 越狱
    Gvim使用
    3622 假期
    4906 删数问题
    2845 排序的代价
    poj 3352
    常用正则表达式汇总
    功能简单例子
  • 原文地址:https://www.cnblogs.com/kenryuu/p/1629478.html
Copyright © 2011-2022 走看看