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

时间:2015-11-10 10:12:57

标签: c# asp.net-mvc service pooling

我有以下情景, 在ASP.Net应用程序中,只要3周的时间到期,就需要执行一段代码。期间的结束日期存储在sql数据库中。我正在寻找可能的解决方案。 一种方法是设置Windows服务以在sql server中保留池结束日期,然后执行代码。有人建议任何更好的方法。

3 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

您应该查看Quartz Scheduler.

Quartz可以托管在ASP.NET WebApplication中,但您必须通过将 StartMode 设置为 AlwaysRunning 空闲时间来避免应用程序池入睡 0

答案 2 :(得分:0)

您可以使用hangfire并完成简单易用的工作:http://hangfire.io/

像这样:

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

很高兴为您服务!