0

例如,如何在 Web 应用程序中每 2 分钟轮询一次?我正在寻找类似于winforms中的计时器的东西。

poller 类将是应用程序中的单例(我使用容器来处理生命周期),并且我也知道 webapp 中对象的生命周期。

4

5 回答 5

6

Web 应用程序代码不打算无限期地连续运行。IIS 可以根据各种情况每小时多次关闭或回收它。

更好的方法是编写 Windows 服务或使用计划任务。

于 2013-07-01T18:03:10.650 回答
0

WebBackgrounder如果您有小规模的需求(这很容易设置 // 最小的基础设施)。

用于严肃工作的Windows 服务/工作人员角色/控制台应用程序(作为定期任务执行) 。

于 2013-07-02T05:47:03.060 回答
0

在 .aspx 页面中将 meta http-equiv 刷新设置为所需的秒数,页面将按照定义自动刷新,您可以更新,例如 Label.Text=DateTime.Now.Tostring(),以显示时间。但如上所述,这样做并不总是好的做法。对于部分渲染,您可以依赖 AJAX 更新面板

于 2013-07-02T04:00:34.500 回答
0

您在 JS 中有 2 个选项

// easy
function run() {
   // do stuff
}
setInterval(run, 120000)

// safer
function run() {
   // do stuff
  setTimout(run, 120000);
}
setTimout(run, 120000);

http://javascript.info/tutorial/settimeout-setinterval

于 2013-07-01T18:08:56.813 回答
0

有很多选择。SignalR 是一个很好的框架,可以解决基于浏览器提供的支持从 WebSockets 优雅地退回到 Long Polling 的轮询问题。

于 2013-07-01T18:02:15.063 回答