2017-04-19 19 views
0

私はHangfireバージョン "1.6.8"を使用しています。'n'回実行した後の定期的なジョブの実行

var datetime = DateTime.Now; 

var cron = Cron.Monthly(datetime.Day,datetime.Hour); 

RecurringJob.AddOrUpdate<IService>(recurringId, x =>x.CreateRecurring(id), cron); 

「n」回実行した後、この定期的ジョブを終了するにはどうすればよいですか?

答えて

0

その数に達した後、メソッドが呼び出されるとき、特定の回数に渡し、実行されてからそれを防ぐために可能性があり、これを行うための最も簡単な方法:

public class MyService : IService 
{ 
    public int runCount = 0; 

    public void CreateRecurring(id, int? maxTimes = null) 
    { 
     if (maxTimes.HasValue && (runCount >= maxTimes)) 
     { 
      // Has run enough times now, don't do it again 
      return; 
     } 

     // do something... 
    } 
} 


// Run a max of 5 times 
RecurringJob.AddOrUpdate<IService>(recurringId, x =>x.CreateRecurring(id, 5), cron); 
関連する問題