Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我在 ASP.NET 的页面上有一个计时器。
经过一段时间后,我想禁用计时器。
我想在计时器滴答事件中放置一个静态变量,该变量将跟踪经过了多少秒。
我的问题是,这行得通吗?
如果用户 X 和 Y 正在查看该页面,他们是否都有单独的本地静态变量?
在经过一定时间后关闭 ASP.NET 计时器的最佳方法是什么?
不,这行不通。 Static在 VB.Net 中是语法糖,它以线程安全的方式在类级别隐藏隐藏的共享变量。由于共享类变量将立即为该页面的所有用户共享,因此这根本不会像您希望的那样工作。
Static
相反,将您的日期时间字段存储在会话中并进行检查。还要记住,计时器本身是在客户端上运行的(假设您使用的是 ajax 计时器控件)。所以禁用它的唯一方法是在服务器事件期间,例如当您的 Tick 事件触发时。