【发布时间】:2021-10-28 23:38:15
【问题描述】:
我正在尝试编写一个 TimerTrigger 函数,该函数在每月的第 5 个工作日(每月的第一天,除了周六/周日)运行。如果第一天是周六/周日,它应该在周一运行。到目前为止我知道如何在每个月的 5 号运行工作,但是如何排除周六/周日?
public static void MyTimerFunction([TimerTrigger("0 0 0 5 * *")] TimerInfo myTimer, ILogger log)
{
log.LogInformation($"C# Timer trigger function executed at: {DateTime.Now}");
}
【问题讨论】:
-
检查
0 0 0 * */1 Mon -
上述表达式将在每月的第一个星期一而不是每月的第五个工作日工作。
-
您要做的另一件事是在周一至周五运行此函数。如果不是星期六/星期日后的第 5 天或第 5 天,则不要执行业务逻辑。
-
@user1672994 好的..谢谢
-
@user1672994 例如本月 .. 第 5 个工作日是第 7 个工作日,但是如果我每天运行代码并检查它是否是第 5 个,则业务逻辑无论如何都会执行。你能建议如何解决这个问题吗?
标签: azure-functions azure-webjobs webjob timer-trigger