是否可以自动化方法在Web应用程序(服务器端)中每x分钟/小时运行一次?
简化代码:
public class Task
{
public string Name { get; set; }
public DateTime Deadline { get; set; }
...
}
案例:每个任务都有截止日期,如果截止日期临近,我想生成邮件。
有一些答案,例如使用 System.Threading here或将功能嵌入到构造函数中。但是我怎么能确定,它可以工作几个月而不被召唤?
谢谢!
答案 0 :(得分:1)
我最喜欢的工具是Hangfire。它允许您安排任务,您的任务将如下所示:
RecurringJob.AddOrUpdate(() => CheckIfDeadlineIsApproaching(), Cron.Hourly);
与评论中的建议不同,这也不需要Windows服务,这使得此解决方案更容易。
答案 1 :(得分:0)
您应该将调度程序放在应用程序启动中。我认为Global.asax.cs
文件