Autofac容器中的Quartz.NET调度问题
创始人
2024-11-12 11:30:34
0

我们可以通过为Quartz.NET注册一个作用域解析器来解决这个问题。这将确保在每次调用作业时创建新的作用域。

第一步是注册作用域解析器。我们可以在注册Autofac容器时添加以下代码:

var builder = new ContainerBuilder(); builder.Register(c => new AutofacJobFactory(c.Resolve())).As().SingleInstance(); builder.RegisterModule(new QuartzAutofacFactoryModule());

在这个示例中,我们注册了AutofacJobFactory并将其指定为IJobFactory的实现。这将确保在每次需要创建作业实例时都会使用Autofac进行解析。

接下来,我们需要创建AutofacJobFactory。这个类都可以很简单,只需要继承IJobFactory并覆盖CreateJob方法即可:

public class AutofacJobFactory : IJobFactory { private readonly IComponentContext _componentContext;

public AutofacJobFactory(IComponentContext componentContext)
{
    _componentContext = componentContext;
}

public IJob NewJob(TriggerFiredBundle bundle, IScheduler scheduler)
{
    return _componentContext.Resolve(bundle.JobDetail.JobType) as IJob;
}

public void ReturnJob(IJob job)
{
    // Do nothing
}

}

在AutoFacJobFactory中,我们将作业创建的责任委托给Autofac。这样,我们就可以确保每次需要创建作业时都会使用新的作用域,从而解决了Quartz.NET调度在Autofac容器中出现的问题。

相关内容

热门资讯

玩家必看科普!德州透视hhpo... 玩家必看科普!德州透视hhpoker,wpk俱乐部是做什么的,好像真的有挂(有挂规律)1、模拟器是什...
终于清楚!佛手在线有挂吗,hh... 终于清楚!佛手在线有挂吗,hhpoker万能辅助器,确实存在有挂(有挂透明挂)1、下载好脚本下载之后...
一起来探讨!hhpoker免费... 一起来探讨!hhpoker免费透视脚本,aapoker安装包怎么使用,竟然真的有挂(有挂教学)在进入...
查到实测!wepoker辅助器... 查到实测!wepoker辅助器安装包,wepoker辅助器安装包,果然是真的有挂(有挂细节)1、每一...
玩家亲测!wepoker免费钻... 玩家亲测!wepoker免费钻石,werplan有挂吗,总是真的有挂(有挂猫腻)1、很好的工具软件,...
盘点几款!we-poker软件... 盘点几款!we-poker软件,wepoker怎么看牌型,确实真的是有挂(讲解有挂)1、每一步都需要...
教学盘点!wepoker代打辅... 教学盘点!wepoker代打辅助,德州hhpoker是真的吗,都是真的有挂(有挂攻略)1、辅助器安装...
重大通报!pokemmo手机版... 重大通报!pokemmo手机版脚本,德州透视是真的假的,本来真的有挂(有挂教程)1、透视辅助软件激活...
专业讨论!we-poker靠谱... 专业讨论!we-poker靠谱吗,wpk控制牌是真的吗,确实真的是有挂(竟然有挂)1、免费脚本咨询教...
玩家攻略!hhpoker作弊码... 玩家攻略!hhpoker作弊码,wepoker底牌透视脚本,本来真的是有挂(有挂工具)1、点击下载安...