代码之家  ›  专栏  ›  技术社区  ›  Jack Marchetti

(ASP.NET)如何确定用户在网站上的时间长度?

  •  2
  • Jack Marchetti  · 技术社区  · 15 年前

    如果用户已经在我的网站上5分钟没有登录,我需要向他们显示警报。

    我该怎么做?

    我会在应用程序启动时向会话添加soemting吗?有没有办法只检查一个人的疗程?也许在页眉/母版页中放置一些内容,如果超过五分钟,是否引发警报?

    任何帮助都将不胜感激。

    谢谢您。

    编辑---

    我最后做的是使用AjaxControlToolkit中的asp:timer控件。

    3 回复  |  直到 15 年前
        1
  •  2
  •   JoshJordan    15 年前

    答案确实在globals.asax中,但应用程序启动不是它。用于实际启动ASP.NET应用程序时。

    我将添加datetime.now到globals.asax中session_start方法的会话中。然后,您可以在每次页面加载时检查它(例如,在基本页或母版页的OnLoad事件中),或者使用Ajax来轮询服务器。

        2
  •  7
  •   Bela    15 年前

    应用程序在最初加载IIS应用程序时启动。 会话启动将为开始的每个新会话触发。

    如果您将当前时间存储在会话\u start中的会话中,那么您可以检查页面加载或使用Ajax调用,以确定在没有它们登录的情况下是否已经过了五分钟。

        3
  •  0
  •   rick schott    15 年前

    如果您真的想要一个5分钟的检查,您需要从会话开始注册一个5分钟的Ajax回调。棘手的部分是让一个页面加载并准备好,当它触发时可以接收它。

    使用Ajax轮询服务器可能是更常见的方法。