ASP.Net在一段时间间隔后执行代码

本文关键字:执行 代码 Net 一段时间 ASP | 更新日期: 2023-09-27 18:21:30

我有下面的场景,在ASP.Net应用程序中,每当3周期限到期时,就需要执行一段代码。期间的结束日期存储在sql数据库中。我正在寻找可能的解决方案。一种方法可以是设置windows服务以在sql server中保存池结束日期,然后执行代码。有人会提出更好的方法吗。

ASP.Net在一段时间间隔后执行代码

您可以使用计划任务。根据您的需要,将其设置为每天/每小时运行一次。它将汇集数据库,检查日期,并决定是否需要继续执行。我发现计划任务更容易维护,因为你只需要创建一个控制台应用程序,而不需要服务代码。

您可能应该看看Quartz Scheduler。

Quartz可以托管在ASP.NET Web应用程序中,但必须通过将StartMode设置为AlwaysRunning和将Idle Time out设为0来避免应用程序池进入休眠状态。

您可以使用hangfire并简单地完成一项有用的工作:http://hangfire.io/

像这样:

BackgroundJob.Schedule( () => Console.WriteLine("Reliable!"), TimeSpan.FromDays(7));

很乐意帮助你!