问题: 我有一个 azure webjob,这个 webjob 执行外部数据源的同步。在这个 webjob 中,我有以下 ExecuteAsync 方法,并且有一个 TimerTrigger 属性,它是带有 CRON 时间的硬编码。
[Singleton]
public async Task ExecuteAsync([TimerTrigger("0 0 * * * *", RunOnStartup = true)] TimerInfo _,
ILogger logger, CancellationToken cancellationToken)
我想让这个 CRON 时间可配置,这样我就不需要进去更改和部署它。如果我需要更改 CRON 时间,我可以在 Azure App 配置中更改它。
我尝试过的:我尝试了以下
[Singleton]
public async Task ExecuteAsync([TimerTrigger("%AMSSyncTime%", RunOnStartup = true)] TimerInfo _,
ILogger logger, CancellationToken cancellationToken)
在我的配置 appsettings.json 中,我有以下内容:
"Values": {
"AMSSyncTime": "0 0 * * * *",
},
但我收到以下异常:InvalidOperationException: '%AMSSyncTime%' does not resolve to a value.
我怎样才能使这个配置?提前致谢
答案 0 :(得分:0)
你有 function.json 文件吗?您需要在其中指定绑定。
{ "scriptFile": "test.js", "bindings": [ { "type": "timerTrigger", "direction": "in", "AMSSyncTime": "0 0 * * * *" } ] }
您可以通过 DashleenBhandari-MSFT
参考这个答案