ASP.NET应用程序的在线用户

Cha*_*tra 9 asp.net asp.net-mvc-4 simplemembership

看到很多与同一概念相关的文章和链接.

使用asp.net统计在线用户

是否有任何ASP.NET应用程序来监控在线用户和页面查看日志报告?

我的情况略有不同.我的应用程序是MVC4并使用SimpleMembershipProvider.我不确定为什么GetNumberOfUsersOnline不起作用.

https://msdn.microsoft.com/en-us/library/system.web.security.membership.getnumberofusersonline(v=vs.110).aspx

有任何想法吗 ?如何以简单有效的方式做到这一点.我只是在我网站的一个地方使用它.

Aar*_*ron 5

我在网上找到了这个,看起来对你有用。只需将此代码添加到您的 Global.asax.cs 文件中:

protected void Application_Start(Object sender, EventArgs e)
{

    Application.Lock();
    Application["UserCount"] = 0;

}
protected void Session_Start(Object sender, EventArgs e)
{

    Application.Lock();
    Application["UserCount"] = (int)Application["UserCount"] + 1;
    Application.UnLock();
}

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

}
Run Code Online (Sandbox Code Playgroud)

然后,当您需要访问用户计数时,可以使用:

var count = (int)Application["UserCount"];
Run Code Online (Sandbox Code Playgroud)


Tod*_*ang 2

另一个与代码正交的好解决方案是 Google Analytics。http://www.google.com/analytics/使用 GA,您可以实时显示网站上的活跃用户。它还可以帮助您了解一段时间内的历史记录,并可以看到用户活动的高峰和低谷。