Quartz.net-IJobFactory实现任务实例创建的依赖注入

本文详细介绍了如何在Quartz.net中利用IJobFactory接口,结合依赖注入容器,实现任务实例的创建和管理工作,确保任务执行时能获取到所需的依赖服务。
摘要由CSDN通过智能技术生成
在使用Quartz.net执行调度任务时,任务类必须实现IJob接口,如下
`public class DLLExecutor : IJob
 {
	public async Task Execute(IJobExecutionContext context)
        {
			//你的处理逻辑
		
		}
 }`

具备如上任务类之后,需要做的就是与JobDetial、Trigger进行关联,为了精简,忽略JobDetial、Trigger相关属性设置,代码如下

`	//方式 1
	Type type = typeof(DLLExecutor);
	var jobBuilder = JobBuilder.Create(type);

	//方式 2
	var jobBuilder = JobBuilder.Create<DLLExecutor>();

	//创建ITrigger
	var triggerBuilder = TriggerBuilder.Create();
	
	//调度器
	var _scheduler = new StdSchedulerFactory().GetScheduler().GetAwaiter().GetResult();

	//绑定
	_scheduler.ScheduleJob(jobDetail, iTrigger);
	
`

好的,最简易的任务创建绑定完成,通过如上代码可知道,如果想在任务类中增加部分动态属性,只能**使用静态变量进行处理,且必须在使用前对静态变量进行赋值**,代码如下

`public class DLLExecutor : IJob
 {
	//日志组件,默认Log4Net,但也允许是Log4net、Nlog、ExceptionLess等等
	public static ILogger Logger =log4net;

	public async Task Execute(IJobExecutionC
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值