Global.asax文件统计网站的总访问量
voidApplication_Start(objectsender,EventArgse)
{
//在应用程序启动时运行的代码
intcount=0;
StreamReadersrd;
//取得文件的实际路径
stringfile_path=Server.MapPath(\"counter.txt\");
//打开文件进行读取
srd=File.OpenText(file_path);
while(srd.Peek()!=-1)
{
stringstr=srd.ReadLine();
count=int.Parse(str);
}
srd.Close();
objectobj=count;
//将从文件中读取的网站访问量存放在Application对象中
Application[\"counter\"]=obj;
}
voidApplication_End(objectsender,EventArgse)
{
//在应用程序关闭时运行的代码
intStat=0;
Stat=(int)Application[\"counter\"];
stringfile_path=Server.MapPath(\"counter.txt\");
StreamWritersrw=newStreamWriter(file_path,false);
srw.WriteLine(Stat);
srw.Close();
}
voidApplication_Error(objectsender,EventArgse)
{
//在出现未处理的错误时运行的代码
}
voidSession_Start(objectsender,EventArgse)
{
//在新会话启动时运行的代码
Application.Lock();
//数据累加
intStat=0;
//获取Application对象中保存的网站总访问量
Stat=(int)Application[\"counter\"];
Stat=1;
objectobj=Stat;
Application[\"counter\"]=obj;
//将数据记录写入文件
stringfile_path=Server.MapPath(\"counter.txt\");
StreamWritersrw=newStreamWriter(file_path,false);
srw.WriteLine(Stat);
srw.Close();
Application.UnLock();
}
voidSession_End(objectsender,EventArgse)
{
//在会话结束时运行的代码。
//注意:只有在Web.config文件中的sessionstate模式设置为
//InProc时,才会引发Session_End事件。如果会话模式设置为StateServer
//或SQLServer,则不会引发该事件。
}
<h4class=\"ask\">追问
那后台不需要添加代码了嘛?!
|