Chr*_*ris 0 c# quartz-scheduler quartz.net
我在Quartz.NET中使用IJobListener来审核所有工作成功/失败.当作业失败时,我希望将异常带入IJobListener,以便也可以存储异常以供以后分析.
目前我的工作听众是这样的:
public virtual void JobWasExecuted(JobExecutionContext context, JobExecutionException x)
{
}
Run Code Online (Sandbox Code Playgroud)
但是,即使作业的Execute方法中的所有事务都包含在带有catch(异常x)的try中,然后我抛出,但是从不填充JobExecutionException的'x'.
有没有一种特殊的方法来实际获取作业监听器的异常?
谢谢
你刚刚抛出异常吗?您是否尝试将其包装在JobWasExecuted期望的正确类型中?
public virtual void Execute(JobExecutionContext context)
{
try
{
//divide by zero... or something else that causes an exception
}
catch (Exception e)
{
JobExecutionException je = new JobExecutionException(e);
je.RefireImmediately = true; //do something with the exception
throw je; //throw JobExecutionException
}
}
Run Code Online (Sandbox Code Playgroud)