有两种解决方案Quartz.server.2008.sln and 石英.2008.sln在下载的quartz.NET 库中。现在我必须设置重复工作。数据库中会有一个表格,其中定义了所有时间表(例如每月的第一个星期五、每月 5 个、每个星期日上午 12 点...等)。我已经按计划执行了该方法。现在我如何使用quartz.net从数据库获取时间表并设置要执行的方法?正确的步骤是什么?
我认为你可以创建一个在后台运行的Windows服务。您可以阅读scheduleFromDatabase
从数据库中获取变量,然后将其传递给 Quartz。
这是控制台应用程序的一个小示例:
static void Main(string[] args)
{
ISchedulerFactory schedFact = new StdSchedulerFactory();
IScheduler sched = schedFact.GetScheduler();
sched.Start();
JobDetail jobDetail = new JobDetail("myJob", null, typeof(HelloJob));
//read this string from database
string scheduleFromDatabase="0 11 16 ? * FRI,SUN";
CronTrigger trigger = new CronTrigger("trigger1", null, "myJob",
null,scheduleFromDatabase );
trigger.StartTimeUtc = DateTime.UtcNow;
trigger.Name = "myTrigger";
sched.ScheduleJob(jobDetail, trigger);
}
public class HelloJob:IJob
{
public void Execute(JobExecutionContext context)
{
Console.WriteLine(DateTime.Now.ToString());
//Call here your method!
}
}
这可能很有用:
Quartz.NET 服务器文档 https://stackoverflow.com/q/1004133/735864
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)