我想用c#作一个网站访问计数器,如何作呢??

来源:百度知道 编辑:UC知道 时间:2024/06/20 06:01:17
我的代码如下,库中表的数据就是0,改变不了.不明白哪儿错了??
protected void Application_Start(Object sender, EventArgs e)
{
OleDbConnection con=db.createcon();
con.Open();
OleDbCommand cmd=new OleDbCommand("select * from countpeople",con);
int countp=Convert.ToInt32(cmd.ExecuteScalar());
con.Close();
Application["total"]=countp;
Application["online"]=0;
}
protected void Session_Start(Object sender, EventArgs e)
{
Application.Lock();
Application["total"]=(int)Application["total"]+1;
Application["online"]=(int)Application["online"]+1;
Application.UnLock();
}
protected void Application_End(Object sender, EventArgs e)
{
OleDbConnection con=db.createcon();
con.Open();
OleDbCommand cmd=new OleDbCommand("update countpeople set num="+Application["total"].ToString(),con);<

把Application_End(Object sender,EventArgs e)方法里的代码写在Sessoin_Start(Object sender,EventArgs e)方法里就行了!

你应该在protected void Session_Start(Object sender, EventArgs e) 中添加写入数据库的代码

在global.aspx文件中的
protected void Session_Start(Object sender, EventArgs e)
里面初始化 Application
Application["count"]=Application["count"]+1;