如何基于 settings.json 而不是 TimerTrigger 中的硬编码值运行 webjob?
settings.json
{
//Runs at 9:30 AM every day
"schedule": "0 30 9 * * *"
}
Functions.cs
[Singleton]
public static void TimerTick([TimerTrigger("0 * * * * *")] TimerInfo myTimer)
{
Console.WriteLine($"Hello at {DateTime.UtcNow.ToString()}");
}
它总是使用硬编码值: 接下来 5 次出现 *调度 (Cron: '0 * * * * ')
** 将是:
答案 0 :(得分:2)
docs 中解释了如何做到这一点:
<块引用>您可以将计划表达式放在应用设置中,并将此属性设置为用 % 符号包裹的应用设置名称,如本例中所示:“%ScheduleAppSetting%”。
所以,在你的情况下,它会是这样的:
settings.json
{
//Runs at 9:30 AM every day
"schedule": "0 30 9 * * *"
}
Functions.cs
[Singleton]
public static void TimerTick([TimerTrigger("%schedule%")] TimerInfo myTimer)
{
Console.WriteLine($"Hello at {DateTime.UtcNow.ToString()}");
}