石英作业未开始

时间:2019-04-18 08:47:12

标签: c# module autostart quartz abp

我正在尝试使用Abp.Quartz计划作业。

使用Net Core 2.2,ABP 4.5

我在这里做了所有类似文档的工作 https://aspnetboilerplate.com/Pages/Documents/Quartz-Integration,仅在PostInitialize方法中解决。

最后,我尝试了与docs中完全相同的操作(从控制器启动调度程序)。

但是它也不起作用。作业没有开始。

namespace Cloud
{
    [DependsOn(typeof(AbpZeroCoreModule),
               typeof(AbpQuartzModule))]
    public class CloudCoreModule : AbpModule
    {
        public override void PreInitialize()
        {
        }

        public override void Initialize()
        {            
            IocManager.RegisterAssemblyByConvention(typeof(CloudCoreModule)
                      .GetAssembly());
        }

        public override void PostInitialize()
        {
             IocManager.Resolve<IQuartzScheduleJobManager>().ScheduleAsync<ApiRequestQueues.ApiRequestProcessor>(
                job =>
                {
                    job
                      .WithIdentity("RevolutApiProcessor")
                      .WithDescription("A job witch processing request front");
                },
                trigger =>
                {
                    trigger
                        .StartNow()
                        .WithSimpleSchedule(
                            schedule =>
                            {
                                schedule
                                    .RepeatForever()
                                    .WithIntervalInSeconds(5)
                                    .Build();
                            });

                });
        }
    }
}

这是ApiRequestProcessor类

public class ApiRequestProcessor : JobBase, ITransientDependency
{
    public override async Task Execute(IJobExecutionContext context)
    {
     //some work
    }
}

0 个答案:

没有答案