Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用windows任务调度的Quartz.Net_C#_Asp.net_Scheduled Tasks_Quartz.net - Fatal编程技术网

C# 使用windows任务调度的Quartz.Net

C# 使用windows任务调度的Quartz.Net,c#,asp.net,scheduled-tasks,quartz.net,C#,Asp.net,Scheduled Tasks,Quartz.net,我正在寻找一个每20分钟运行一次的计划任务(控制台应用程序) 我已经研究过使用Quartz.Net来实现这一点,它看起来很棒,但我看不出它是否能与我的控制台应用程序一起工作 我想要的是: 如果我只使用quartz.net,那么这个控制台应用程序必须永远打开,我的代码才能按计划运行。有没有办法让windows每20分钟为我运行一次Quartz.Net计划任务 因此,Windows任务调度--20分钟-->使用Quartz.Net运行控制台应用程序 或者我应该制作一个标准的.NET控制台应用程序

我正在寻找一个每20分钟运行一次的计划任务(控制台应用程序)

我已经研究过使用Quartz.Net来实现这一点,它看起来很棒,但我看不出它是否能与我的控制台应用程序一起工作

我想要的是:

  • 如果我只使用quartz.net,那么这个控制台应用程序必须永远打开,我的代码才能按计划运行。有没有办法让windows每20分钟为我运行一次Quartz.Net计划任务
因此,Windows任务调度--20分钟-->使用Quartz.Net运行控制台应用程序

或者我应该制作一个标准的.NET控制台应用程序,让它每20分钟运行一次控制台应用程序


干杯

不要将任务调度程序与石英混合使用,它们是两种不同的做事方法

通常情况下,任务调度器每隔一段时间进行配置,以运行只执行工作并关闭的控制台应用程序

建议使用Quartz的方法是将其嵌入windows服务应用程序中。
然后在服务器上安装此服务,并将其配置为始终运行和自动启动(这将保护您免受崩溃和死亡,并确保应用程序始终运行,而不像控制台应用程序)

不要将任务调度器与Quartz混在一起,因为它们是两种不同的操作方法

通常情况下,任务调度器每隔一段时间进行配置,以运行只执行工作并关闭的控制台应用程序

建议使用Quartz的方法是将其嵌入windows服务应用程序中。
然后在服务器上安装此服务,并将其配置为始终运行和自动启动(这将保护您免受崩溃和死亡,并确保应用程序始终运行,而不像控制台应用程序)

这非常有意义。谢谢。@magna_nz-为了补充这一点,我所看到的唯一结合方式是安排一个windows任务,在服务失败(可能发生,但在正常情况下不应该发生)的情况下,使用
net start
定期启动windows服务(在您的情况下是Quartz主机)。这非常有意义。谢谢。@magna_nz-为了补充这一点,我所看到的唯一结合方式是安排一个windows任务,在服务失败(可能发生但在正常情况下不应该发生)的情况下,使用
net start
定期启动windows服务(在您的情况下是石英主机)。使用Topshelf()与Hangfire()一起实现您的目标。Topshelf是一个优秀的windows服务框架,而hangfire是一个调度程序。将Topshelf()与hangfire()结合使用可以实现您想要的功能。Topshelf是一个优秀的windows服务框架,而hangfire是一个调度器。