gpt4 book ai didi

c# - 如何设置 Quartz.NET 以安排电子邮件

转载 作者:太空宇宙 更新时间:2023-11-03 20:32:45 26 4
gpt4 key购买 nike

下载的quartz.NET库中有Quartz.server.2008.slnquartz.2008.sln两个方案。现在我必须设置重复工作。数据库中将有一个表,其中将定义所有计划(例如每月的第一个星期五,每月的每个 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 server documentation

关于c# - 如何设置 Quartz.NET 以安排电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6647272/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com