繁体   English   中英

为什么quartz.net 不执行我的所有代码?

[英]Why quartz.net does not execute all my code?

我正在使用 mvc 中使用quartz.net 安排的任务,但不幸的是,并非我的所有代码都完全运行并且忽略了大部分代码步骤。 经过努力和前面的例子对比,我发现继承自IJOB class的Execute function是async类型,在调用global.asax之后,我必须定义如下,这种情况下它不执行代码完全忽略了其中的一部分。 感谢您的帮助,因为它真的困扰着我 Global.asax:

public class Global : HttpApplication
{
    
    void Application_Start(object sender, EventArgs e)
    {
        // Code that runs on application startup
        AreaRegistration.RegisterAllAreas();
        GlobalConfiguration.Configure(WebApiConfig.Register);
        RouteConfig.RegisterRoutes(RouteTable.Routes);
        ConfigureStoryQuartzJobs().Wait();

    }



    public static  async Task ConfigureStoryQuartzJobs()
    {
        DateTimeOffset startTime = DateTime.UtcNow;

        IJobDetail job = JobBuilder.Create<CheckContent>()
                                  .WithIdentity("job1")
                                  .Build();
        ITrigger trigger = TriggerBuilder.Create()
                                         .StartAt(startTime)
                                         .WithSimpleSchedule(x => x.WithIntervalInMinutes(5).RepeatForever())
                                         .Build();
        ISchedulerFactory sf = new StdSchedulerFactory();
        IScheduler sc = await sf.GetScheduler();
      await  sc.ScheduleJob(job, trigger);
       await sc.Start();

    }
}

工作:

 public class CheckContent : IJob
{

    public async Task Execute(IJobExecutionContext context)
    {
      await  RelaseContent.SendStory();
      await  RelaseContent.SendPost();
      await  RelaseContent.SendAlboum();
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM