2015-11-05 60 views
3

我的意思是,如果我有這樣一個觸發器:在Quartz中是否有一個有意義的ITrigger.ToString()方法?

ITrigger trigger = TriggerBuilder.Create() 
    .WithSimpleSchedule(x => x 
     .WithIntervalInSeconds(40) 
     .RepeatForever()) 
    .Build(); 

我希望能夠得到觸發的時間表的有意義的(甚至局部)的說明。例如,我希望看到「每40秒重複一次」。當我打電話給trigger.ToMeaningfulString()。我無法谷歌這樣的東西,但我幾乎可以肯定,我不是第一個有這個想法,也許,已經有一個實現。如果您想開發某種能夠顯示觸發或作業狀態/細節的作業管理器,這將會很有用。這不是最重要的任務,所以如果沒有實施,我不想投入很多精力。

回答

2

不知道它是否存在簡單的時間表。如果您在使用cron的表達式構建你的時間表,但是,你可以使用cron expression descriptor,這需要一個cron表達和究竟你問什麼:

var cronExpression = "40 * * * * ?"; 
ITrigger trigger = TriggerBuilder.Create() 
     .WithCronSchedule(cronExpression) 
     .Build(); 

var humanReadableString = ExpressionDescriptor.GetDescription(cronExpression); 
// humanReadableString = "Every 40 seconds" 

可作爲NuGet package

+0

謝謝,我會在稍後看看,但我認爲這可能正是我所期待的。 – Dmytro

相關問題