使用Quartz .NET创建Cron表达式

时间:2012-11-26 14:45:34

标签: c# .net cron quartz-scheduler quartz.net

是否可以使用Quartz .NET程序集生成cron表达式?我看到CronScheduleBuilder类有一个私有成员cronExpression,这基本上就是我要找的东西。有没有其他方法来获取cron表达式?

2 个答案:

答案 0 :(得分:7)

可以使用ICronTrigger.CronExpressionString

CronScheduleBuilder csb = CronScheduleBuilder
    .WeeklyOnDayAndHourAndMinute(DayOfWeek.Monday, 12, 0);

ICronTrigger trigger = (ICronTrigger)TriggerBuilder
    .Create()
    .WithSchedule(csb)
    .Build();

string cronExpression = trigger.CronExpressionString;

答案 1 :(得分:2)

使用Ian回答,我创建了一个小扩展方法。希望它对其他人有用......

public static class QuartzExtentionMethods
{
    public static string ToCronString(this CronScheduleBuilder cronSchedule)
    {
        ICronTrigger trigger = (ICronTrigger)TriggerBuilder
        .Create()
        .WithSchedule(cronSchedule)
        .Build();

        return trigger.CronExpressionString;
    }
}