可重复的背景方法



所以我一直在到处寻找一种方法来做到这一点,但没有成功。我正在做一个MVC5项目。我正在尝试获取一种执行特定操作的方法,每 10 分钟在我的程序后台重复运行一次(该方法从其他站点获取信息并将它们放入数据库中)。

我希望通过链接或一些以有效方式完成此操作的一些示例。

尝试像

这样捆绑 IIS 线程进行后台工作不是一个好主意。更好的选择是让一个单独的进程来完成这项工作,例如Windows服务。但是,如果您在可以使用的选项中受到限制,则可能:

  • 创建简单的控制台应用来执行工作,并设置 Windows 计划任务以每隔 10 分钟运行一次。(这假设您可以在部署设置中执行此操作)
  • 如果所有其他方法都失败,请在执行任务的控制器上创建正常操作方法。该任务将在点击网址时执行...因此,通过 CRON 作业(通常由您的托管服务提供商提供)每 10 分钟点击一次该 URL。

不是你的典型选择,但我感觉它们可能对你很实用。

使用定时事件怎么样?

var timer = new System.Timers.Timer(600,000);
timer.elapsed += (sender, e) => { /*fetch data*/ };

最新更新