2015-01-10 2 views
25

Sto usando Hangfire e come il software molto! Ma una cosa che mi manca è come aggiungere un lavoro ricorrente che viene eseguito ogni pochi minuti (ad esempio ogni 15 minuti). C'è un modo per ottenere questo?Configurare il cron job che è in esecuzione ogni 15 minuti su Hangfire

+1

È possibile utilizzare questo (http://www.cronmaker.com/) per generare espressioni cron. E poi (come per la risposta accettata) puoi chiamare RecurringJob.AddOrUpdate (() => Console.Write ("Ricorrente"), cronText); –

risposta

44

Attualmente sto usando questo approccio:

RecurringJob.AddOrUpdate(() => Console.Write("Recurring"), "*/15 * * * *"); 

e sta lavorando come un fascino.

riferimento alla mia domanda nei forum Hangfire: http://discuss.hangfire.io/t/how-to-create-cron-job-that-is-executing-every-15-minutes/533

+2

Grazie per aver condiviso la soluzione. Non sapevo che l'Hangfire accettasse quelle espressioni cron. – Jerry

+1

Per 30 min = "*/30 * * * *"? – Ricardo

+1

Sì, '*/30 * * * *' sarà per 'ogni 30 minuti' –

3

Guardando alla classe Hangfire.Cron non so se è possibile.

Una soluzione potrebbe essere quella di creare quattro orari diversi cioè:

RecurringJob.AddOrUpdate(
    () => Console.WriteLine("Transparent!"), 
    Cron.Hourly(0)); 

RecurringJob.AddOrUpdate(
    () => Console.WriteLine("Transparent!"), 
    Cron.Hourly(15)); 

RecurringJob.AddOrUpdate(
    () => Console.WriteLine("Transparent!"), 
    Cron.Hourly(30)); 

RecurringJob.AddOrUpdate(
    () => Console.WriteLine("Transparent!"), 
    Cron.Hourly(45));