Innofactor / quartz-aspnet

ASP.NET Core extensions for Quartz.NET

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ASP.NET Core extensions for Quartz.NET

status badge

Usage example

In Startup.cs:

    /// Register scheduler and jobs for DI ///
    public void ConfigureServices(IServiceCollection services) {
      // ...
      services.UseQuartz(typeof(HelloJob), typeof(HommaJob));
    }
    
    public void Configure(IApplicationBuilder app, IHostingEnvironment env) {

      var configuration = app.ApplicationServices.GetService<IOptions<AppConfig>>();
      var parameters = configuration.Value;
      var trigger = TriggerBuilder.Create()
        .WithIdentity(nameof(HelloJob))
        .WithCalendarIntervalSchedule(x => x.WithIntervalInMinutes(parameters.HelloJobIntervalInMinutes).PreserveHourOfDayAcrossDaylightSavings(true))
        .Build();

      // Fetch IScheduler whenever afterwards from DI container and configure schedules for jobs
      var scheduler = app.ApplicationServices.GetService<IScheduler>();
      scheduler.StartJob<HelloJob>(trigger);
    }

About

ASP.NET Core extensions for Quartz.NET

License:GNU Lesser General Public License v3.0


Languages

Language:C# 100.0%