.Net Core Quartz

Quartz介绍

Quartz主要有三部分组成任务(Job)、触发器(Trigger)和调度器(Schedule)。

开发环境:VS2019、.Net5、Quartz.AspNetCore 3.6.2

1、引入Quartz.AspNetCore

2、创建TaskJob.cs文件

[DisallowConcurrentExecution]
    public class TaskJob : IJob
    {
        public System.Threading.Tasks.Task Execute(IJobExecutionContext context)
        {
            LogHelper.Info("======TaskJob:Call-Start======");

            LogHelper.Info("定时任务测试成功");

            LogHelper.Info("======TaskJob:Call-End======");
            return System.Threading.Tasks.Task.CompletedTask;
        }
    }

3、修改Startup.cs文件中ConfigureServices方法

public void ConfigureServices(IServiceCollection services)
        {
            services.AddQuartz(q => {
                q.UseMicrosoftDependencyInjectionJobFactory();
                var jobKey = new JobKey("MyJob");
                q.AddJob<TaskJob>(opts => opts.WithIdentity(jobKey));
                q.AddTrigger(tri => 
                tri.ForJob(jobKey)
                .WithIdentity("MyJob-trigger")
                .WithCronSchedule(Configuration.GetConnectionString("QuartzExecutionTime")));
            });
            services.AddQuartzHostedService(q =>q.WaitForJobsToComplete = true);

            services.AddControllers();
            services.AddSwaggerGen(c =>
            {
                c.SwaggerDoc("v1", new OpenApiInfo { Title = "FescoFast.Collect.Api", Version = "v1" });
            });
        }

4、配置appsettings.json文件,设置定时任务执行时间

 完成以上操作设置好定时任务执行时间后运行项目,在日志里查看输出记录

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值