He buscado una respuesta sobre cómo volver a disparar un trabajo después de una determinada cantidad de tiempo, si el trabajo arroja una excepción. No puedo ver ninguna forma simple de hacer esto.Refiera el disparador de quartz.net después de 15 minutos si falla el trabajo con la excepción
si fijo mi gatillo de esta manera:
JobDetail job = new JobDetail("Download catalog", null, typeof(MyJob));
job .Durable = true;
Trigger trigger= TriggerUtils.MakeDailyTrigger(12, 0);
trigger.StartTimeUtc = DateTime.UtcNow;
trigger.Name = "trigger name";
scheduler.ScheduleJob(job , trigger);
Y MyJob tener este aspecto:
public class MyJob : IJob
{
public void Execute(JobExecutionContext context)
{
var service = new service();
try
{
service.Download();
}
catch (Exception)
{
throw;
}
}
}
cómo hago el gatillo para refire/se vuelven a disparar después de que se ha ido 15 minutos si la llamada a service.Download() arroja algún tipo de excepción?
Sí. Esto lo he leído, pero no es una buena solución, porque podría significar que se refinaría miles de veces (o incluso refinaría millones de veces). Pero es bueno ver que has llegado a esta conclusión. – mslot
@mslot: He actualizado mi respuesta. – LeftyX
Gracias: D Tuve la misma idea, pero esta es la primera vez que uso cuarzo, así que no estaba seguro de poder utilizar el contexto. – mslot