我试图在我的MVC应用程序中每天从00:00开始配置一个定期任务.我知道这可以通过RecurringJob.AddOrUpdate(()=> Console.Write(“Easy!”),Cron.Daily);来实现.
现在我的问题是hangfire cron是基于UTC时间还是服务器上的本地时间工作的.如果它在本地时间工作,有没有办法在UTC时间运行?我必须这样做,因为这将是一个日终过程,所有计划的任务都是根据我的数据库中的通用时间安排的.
现在我的问题是hangfire cron是基于UTC时间还是服务器上的本地时间工作的.如果它在本地时间工作,有没有办法在UTC时间运行?我必须这样做,因为这将是一个日终过程,所有计划的任务都是根据我的数据库中的通用时间安排的.
解决方法
要在UTC时区执行作业,您可以在定义作业时提供TimeZoneInfo作为TimeZoneInfo.Utc.
RecurringJob.AddOrUpdate(() => Console.Write("Easy!"),Cron.Daily,TimeZoneInfo.Utc);
要在本地时区执行作业,可以使用TimeZoneInfo.Local.