ASP.NET计时器功能实现

ASP.NET 的计时器功能,适合做考试倒计时、定时刷数据那种需求。你要是做的是在线考试、实时数据同步,或者想页面里定时更新个区域,这东西还挺顺手。

服务器端的 System.Web.UI.Timer,主要用来干点重的活,比如后台定时跑点数据库逻辑啥的。它的 Tick 事件就像闹钟,到了时间就“叮”一下触发;不过注意,它不会直接改前端页面,除非你让它回发。

客户端的 System.Web.UI.WebControls.Timer 就灵活多了,主要搭配 UpdatePanel 用,能定时刷新页面局部。比如考试系统的倒计时,用它就蛮合适,前端秒级刷新,用户体验也不错。

看下面这段代码,Timer1_Tick 每秒更新剩余时间,用 lblCountdown.Text 实时显示。挺常见的玩法:

protected void Timer1_Tick(object sender, EventArgs e) {
  int remainingTime = GetRemainingExamTime();
  lblCountdown.Text = $"{remainingTime / 60:00}:{remainingTime `:00}";
}

你要是想控制考试结束就自动交卷,也可以加点判断逻辑,比如时间到就禁用输入、跳转页面啥的,JS 和后台配合一下就行。

另外,如果你更偏向客户端方案,不妨看看 easytimer.js,也挺轻量的。

,ASP.NET 的计时器用好了,不光能省不少事,还能让页面更智能。你要是做.NET 项目,又刚好有定时更新的需求,真可以试试。

rar 文件大小:16.66KB