如何安排服务使用服务结构在每天和特定时间运行?

问题描述

我正在尝试构建一种服务,使其每天在特定时间运行一次,以减少使用服务结构对数据库的多次调用

解决方法

您可以使用Actor reminders

您需要调用RegisterReminderAsync。每24小时运行一次


var reminderRegistration = await this.RegisterReminderAsync(
        reminderName,BitConverter.GetBytes(amountInDollars),TimeSpan.FromMinutes(0),//The amount of time to delay before firing the reminder
        TimeSpan.FromHours(24));    //The time interval between firing of reminders

如果要在特定时间运行,则可以每小时/ x分钟触发一次,并且可以使用该方法检查DateTime.UtcNow是否在正确的窗口中。