4个回答
展开全部
可以用application,在Global.asax文件中,实现,其中总访问量用Application["allVisitCount"]记录,而当前在线人数用Application["nowCount"]记录,具体代码如下
/// <summary>
/// 在应用程序启动时运行的代码,先读取一个基数。。
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
void Application_Start(object sender, EventArgs e)
{
Application.Lock(); //临界变量,使用加锁功能,其他用户不能访问。
Application["allVisitCount"] = ReadCont(); //ReadCont()可以从数据库中得到,也可以从一个txt中得到,看你用什么了。
Application["nowCount"] = 0;
Application.UnLock(); //临界变量被解锁。
}
void Application_End(object sender, EventArgs e)
{
WrightCont(Application["allVisitCount"].ToString());
// WrightCont()函数就是把你的所有访问量值记录到数据库或者txt中,看你自己实现了
}
void Application_Error(object sender, EventArgs e)
{
WrightCont(Application["allVisitCount"].ToString());
}
//对于每一个新的用户,所有的访问量和当前访问量都要加一
void Session_Start(object sender, EventArgs e)
{
Application.Lock(); //临界变量,使用加锁功能,其他用户不能访问。
Application["allVisitCount"] = Int32.Parse(Application["allVisitCount"].ToString()) + 1;
Application["nowCount"] = Int32.Parse(Application["nowCount"].ToString()) + 1;
Application.UnLock(); //临界变量被解锁。
}
//当一个用户退出时,当前在线人数减一,不过要取决与你的session时间。
void Session_End(object sender, EventArgs e)
{
Application.Lock(); //临界变量,使用加锁功能,其他用户不能访问。
Application["nowCount"] = Int32.Parse(Application["nowCount"].ToString()) - 1;
Application.UnLock(); //临界变量被解锁。
}
在具体的页面里。。你就可以通过
<tt>---------欢迎您,本站的第<%=Application["allVisitCount"]%>位访客!-------</tt><br />
<tt>---------当前在线人数<%=Application["nowCount"]%>位-------</tt><br />
/// <summary>
/// 在应用程序启动时运行的代码,先读取一个基数。。
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
void Application_Start(object sender, EventArgs e)
{
Application.Lock(); //临界变量,使用加锁功能,其他用户不能访问。
Application["allVisitCount"] = ReadCont(); //ReadCont()可以从数据库中得到,也可以从一个txt中得到,看你用什么了。
Application["nowCount"] = 0;
Application.UnLock(); //临界变量被解锁。
}
void Application_End(object sender, EventArgs e)
{
WrightCont(Application["allVisitCount"].ToString());
// WrightCont()函数就是把你的所有访问量值记录到数据库或者txt中,看你自己实现了
}
void Application_Error(object sender, EventArgs e)
{
WrightCont(Application["allVisitCount"].ToString());
}
//对于每一个新的用户,所有的访问量和当前访问量都要加一
void Session_Start(object sender, EventArgs e)
{
Application.Lock(); //临界变量,使用加锁功能,其他用户不能访问。
Application["allVisitCount"] = Int32.Parse(Application["allVisitCount"].ToString()) + 1;
Application["nowCount"] = Int32.Parse(Application["nowCount"].ToString()) + 1;
Application.UnLock(); //临界变量被解锁。
}
//当一个用户退出时,当前在线人数减一,不过要取决与你的session时间。
void Session_End(object sender, EventArgs e)
{
Application.Lock(); //临界变量,使用加锁功能,其他用户不能访问。
Application["nowCount"] = Int32.Parse(Application["nowCount"].ToString()) - 1;
Application.UnLock(); //临界变量被解锁。
}
在具体的页面里。。你就可以通过
<tt>---------欢迎您,本站的第<%=Application["allVisitCount"]%>位访客!-------</tt><br />
<tt>---------当前在线人数<%=Application["nowCount"]%>位-------</tt><br />
追问
水平太低 茫然 能1、2、3、列出操作步骤吗?
博阳精讯
2024-07-25 广告
2024-07-25 广告
端到端优化(End-to-end Optimization)是指在机器学习或深度学习中,通过优化整个系统的性能来提高最终的输出结果。这种优化方法侧重于整个系统的端到端性能,而不是单独优化每个组件或模块。在深度学习中,端到端优化通常指的是将整...
点击进入详情页
本回答由博阳精讯提供
展开全部
看你怎么设计了,如果是按IP地址统计人数就获取客户端的IP地址,然后储存到数据库并记录次数,碰到相同IP的就++更新次数,又或者同个IP每天只算一次访问量,那就获取datetime.today来做对比,不是当天的就++,否则不算访问量。
如果按session来统计就只要每次有新的session就++,cookie也同理,不过cookie如果客户端禁用了就没办法获取较准确的统计数了
如果按session来统计就只要每次有新的session就++,cookie也同理,不过cookie如果客户端禁用了就没办法获取较准确的统计数了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
推荐think in java的 脑子都有点那个 ! 你这小子在这个版面问过很多遍同样的问题了吧 说了去看head first java 是给新手中的新手看的 但是看完绝对出来水平高
追问
你这家伙!我第一次问 我去看看你推荐的在说
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Global.asax文件统计网站的总访问量
void Application_Start(object sender, EventArgs e)
{
// 在应用程序启动时运行的代码
int 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 = int.Parse(str);
}
srd.Close();
object obj = count;
//将从文件中读取的网站访问量存放在Application对象中
Application["counter"] = obj;
}
void Application_End(object sender, EventArgs e)
{
// 在应用程序关闭时运行的代码
int Stat = 0;
Stat = (int)Application["counter"];
string file_path = Server.MapPath("counter.txt");
StreamWriter srw = new StreamWriter(file_path, false);
srw.WriteLine(Stat);
srw.Close();
}
void Application_Error(object sender, EventArgs e)
{
// 在出现未处理的错误时运行的代码
}
void Session_Start(object sender, EventArgs e)
{
// 在新会话启动时运行的代码
Application.Lock();
//数据累加
int Stat = 0;
//获取Application对象中保存的网站总访问量
Stat = (int)Application["counter"];
Stat += 1;
object obj = Stat;
Application["counter"] = obj;
//将数据记录写入文件
string file_path = Server.MapPath("counter.txt");
StreamWriter srw = new StreamWriter(file_path, false);
srw.WriteLine(Stat);
srw.Close();
Application.UnLock();
}
void Session_End(object sender, EventArgs e)
{
// 在会话结束时运行的代码。
// 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为
// InProc 时,才会引发 Session_End 事件。如果会话模式设置为 StateServer
// 或 SQLServer,则不会引发该事件。
}
void Application_Start(object sender, EventArgs e)
{
// 在应用程序启动时运行的代码
int 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 = int.Parse(str);
}
srd.Close();
object obj = count;
//将从文件中读取的网站访问量存放在Application对象中
Application["counter"] = obj;
}
void Application_End(object sender, EventArgs e)
{
// 在应用程序关闭时运行的代码
int Stat = 0;
Stat = (int)Application["counter"];
string file_path = Server.MapPath("counter.txt");
StreamWriter srw = new StreamWriter(file_path, false);
srw.WriteLine(Stat);
srw.Close();
}
void Application_Error(object sender, EventArgs e)
{
// 在出现未处理的错误时运行的代码
}
void Session_Start(object sender, EventArgs e)
{
// 在新会话启动时运行的代码
Application.Lock();
//数据累加
int Stat = 0;
//获取Application对象中保存的网站总访问量
Stat = (int)Application["counter"];
Stat += 1;
object obj = Stat;
Application["counter"] = obj;
//将数据记录写入文件
string file_path = Server.MapPath("counter.txt");
StreamWriter srw = new StreamWriter(file_path, false);
srw.WriteLine(Stat);
srw.Close();
Application.UnLock();
}
void Session_End(object sender, EventArgs e)
{
// 在会话结束时运行的代码。
// 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为
// InProc 时,才会引发 Session_End 事件。如果会话模式设置为 StateServer
// 或 SQLServer,则不会引发该事件。
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询