asp.net-core - 每天上午 12 点和下午 12 点在 .net 核心中使用 Quartz 作业调度程序
问题描述
在 .NET Core 5 Web API 项目中,我有一个作业调度程序,它正在更新数据库中的某些内容。
我想每天在上午 12 点和下午 12 点运行该作业调度程序两次。cron 表达式会是什么?
我怎样才能在一天内运行两次 Quartz 作业调度程序?
这是调度程序启动的代码:
public async Task StartAsync(CancellationToken cancellationToken)
{
Scheduler = await _schedulerFactory.GetScheduler(cancellationToken);
Scheduler.JobFactory = _jobFactory;
var job2 = new JobSchedule(jobType: typeof(MCBJob),
cronExpression: "0 0 0/12 * * ");
var mcbJob = CreateJob(job2);
var mcbTrigger = CreateTrigger(job2);
await Scheduler.ScheduleJob(mcbJob, mcbTrigger, cancellationToken);
await Scheduler.Start(cancellationToken);
}
解决方案
您可以用 分隔值,
以指定单个值。
https://en.wikipedia.org/wiki/Cron#CRON_expression
4 -> 4
0-4 -> 0,1,2,3,4
*/4 -> 0,4,8,12,...,52,56
0,4 -> 0,4
我们现在可以建立时间表:
0 0 0,12 * *
| | | | every month
| | | every day
| | at hour 0 and 12
| at minute 0
at first second
您可以使用https://crontab.guru/以交互方式构建 cron 表达式。
推荐阅读
- powerbi - 隐藏视觉对象,直到在 Power BI 中选择切片器
- http - HTTP 客户端无法获取页面,而其他工具 (wget/curl) 可以
- java - 数字 600851475143(Java)的最大质因数是多少?我的错误可能是什么?
- c# - Autofac注册和解决混乱
- javascript - 正则表达式代码,用于至少允许带有符号的字母或数字
- scala - 如何在运行时定义一个类,其中包括对没有伴随类的对象方法的调用?
- python - 创建新对象实例但旧实例在 python 中被更改
- file-upload - Magento 2.4:如何在 magento 2 管理员中隐藏上传按钮?
- javascript - javascript - 将对象数组中的 2 个对象合并为一个对象
- python - 裁剪图像后转换 Numpy 数组