使用 appsetting.json C# Azure Function 的参数化 Cron 表达式

问题描述 投票:0回答:1

我正在尝试在 Azure 函数中使用 Cron 表达式创建时间触发器属性。我想查看 appsetting.json 中的 Cron 表达式。 我在这里引用了代码,但没有运气https://learn.microsoft.com/en-us/azure/azure-functions/functions-bindings-timer?tabs=python-v2%2Cin-process&pivots=programming-language- csharp#ncrontab-表达式

这是我的代码”:

这是我尝试将 cron 表达式作为变量传递的地方,但 TimerTriggerDaily 有一条错误消息,指出该参数在当前上下文中不存在(我已使用 Microsoft.Extensions.Configuration 引用;)

 [FunctionName("MyFunction")]
 public async Task Run([TimerTrigger(TimerTriggerDaily)]TimerInfo myTimer, ILogger log)
        {
            
            var MyConfig = new ConfigurationBuilder().AddJsonFile("appsettings.json").Build();
            var AwaitFileNotReadyRetryTimer = MyConfig.GetValue<int>("MyConfig:AwaitFileNotReadyRetryTimer");
            var TimerTriggerDaily = MyConfig.GetValue<string>("MyConfig:TimerTriggerDaily");

这是我的appsettings.json

{
  "MyConfig": {
    "TimerTriggerDaily": "0 0 0 * * *",
    "AwaitFileNotReadyRetryTimer": 10000
  }
}
c# cron
1个回答
0
投票

我的设置是在调用 TimerTrigger 后初始化的。在 settings.json 文件中的 Values 下添加了我的参数。它成功了!

© www.soinside.com 2019 - 2024. All rights reserved.