Создать Cron Expression, используя Quartz .NET

Возможно ли использовать сборку Quartz .NET для генерации выражения cron? Я видел, что CronScheduleBuilder у класса есть личный член cronExpression что по сути то, что я ищу. Есть ли другой способ получить само выражение cron?

2 ответа

Решение

Возможно использование ICronTrigger.CronExpressionString

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

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

string cronExpression = trigger.CronExpressionString;

Используя ответ Яна, я создал небольшой метод расширения. Надеюсь, это будет полезно для кого-то еще...

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

        return trigger.CronExpressionString;
    }
}
Другие вопросы по тегам