Создать 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;
}
}