向Quartz.NET Windows服务动态添加和删除作业
本文关键字:添加 删除 作业 动态 服务 Quartz NET Windows | 更新日期: 2023-09-27 18:22:23
我正在开发一个电子邮件营销WinForm
应用程序。对于活动的日程安排,我决定使用Quartz.NET
。我需要它作为Windows服务运行。但我也希望用户能够通过程序向服务添加作业(例如,每天早上8点需要运行的活动,基本上是运行.bat文件)。
我还将所有作业计划保存在数据库中,以便在停止/启动操作系统或Windows服务时,它仍然可以读取所有需要运行的作业。
在服务运行时,如何向服务添加作业?当然,更倾向于将作业动态添加/删除到服务中。坦率地说,停止服务并再次从数据库中读取所有作业是我的最后手段。
您可以将Quartz.Net安装为windows服务,并将其配置为使用AdoJobStore
WinForm应用程序将是您可以添加、挂起和删除作业和触发器的界面。
在执行此操作时,您不必停止windows services
。
您不需要读取数据库来了解Quartz中发生了什么,但必须使用提供的API。
我很久以前也做过类似的事情;我的quartz.net"经理"是一个web应用程序。
你可以在这里读我的答案。
我想做你想做的事情的步骤基本上是一样的。
可以在这里和这里找到Quartz.net样本和免费书籍的参考资料。