【问题标题】:Application start in global.asax应用程序在 global.asax 中启动
【发布时间】:2010-05-02 18:54:40
【问题描述】:

我正在asp.net 3.5 和sql server 2005 中开发我的应用程序,我想将访问者信息记录到我的数据库中,就像访问者进入我的网站后,我会将他的浏览器详细信息插入到数据库中。 [访问者不必登录我的网站]。

现在我很困惑在哪里放置我的代码,如果我在每个 page_load 中放置插入函数,那么它将在每个页面上执行,并且我将无法获得访问我网站的确切访问者数量。 我应该在 Global.asax 中使用 application_start 吗??

请帮忙。

【问题讨论】:

    标签: asp.net


    【解决方案1】:

    您可以在 global.asax 中使用 session_start,这样每个用户的访问只会发生一次。

    【讨论】:

      【解决方案2】:

      我可能会把它放在HttpModule 中并记录点击次数。如果不登录用户,就很难知道您网站上的用户“会话”是什么,因此记录点击次数会更容易。

      您可能需要在您的网站上发布通知,告知用户您正在获取哪些信息。

      【讨论】:

      • 感谢 Russ,我只存储浏览器信息以供参考,例如浏览器名称和主要版本。我将实现 HttpModule。谢谢:)
      【解决方案3】:

      如果您想在代码级别管理访问者,您需要在每次会话增加计数器后,在应用程序配置文件中的 Application_Start 方法下启动访问者计数器。

      void Session_Start(object sender, EventArgs e)
      {
      // Code that runs when a new session is started
      Application.Lock();
      Application["NoOfVisitors"] = (int)Application["NoOfVisitors"] + 1;
      Application.UnLock();
      }
      有关更多详细信息,请点击下面给出的链接。

      http://www.freshcodehub.com/Article/49/show-number-of-visitors-in-aspnet-application

      【讨论】:

        猜你喜欢
        • 2010-12-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-07-31
        • 1970-01-01
        • 1970-01-01
        • 2011-09-13
        • 2012-06-07
        相关资源
        最近更新 更多