0
工作在我Global.cs,在session_start不会在asp.net
namespace HitCounters
{
public class Global : System.Web.HttpApplication
{
private static int totalNumberOfUsers = 0;
private static int currentNumberOfUsers = 0;
protected void Session_Start(Object sender, EventArgs e)
{
totalNumberOfUsers += 1;
currentNumberOfUsers += 1;
}
protected void Session_End(Object sender, EventArgs e)
{
currentNumberOfUsers -= 1;
}
protected void Application_End(Object sender, EventArgs e)
{
}
public static int TotalNumberOfUsers
{
get
{
return totalNumberOfUsers;
}
}
public static int CurrentNumberOfUsers
{
get
{
return currentNumberOfUsers;
}
}
}
}
而且,在母版页的Page_Load中,
countOnline.Text = HitCounters.Global.CurrentNumberOfUsers.ToString();
countVisitor.Text = HitCounters.Global.TotalNumberOfUsers.ToString();
我想在session_start不起作用。 访客总数和在线用户总数总是显示为零。 我想知道为什么!我错过了什么吗?
你的代码不是线程安全的。在增量周围添加锁,并减少或使用互锁增量。 – NickD 2013-04-04 09:49:45
我参考此链接> http://imar.spaanjaars.com/223/howto-create-a-hit-counter-using-the-globalasax-file-in-aspnet-1x – zey 2013-04-04 09:50:45
您是否在您的应用程序中使用Session? – Joe 2013-04-04 09:50:58