是否可以根据 appsetting.json 中的值在 Azure WebJob 的初始加载期间设置“QueueTrigger”值?

Is this possible to set the “QueueTrigger”-value during initial load of a Azure WebJob, based on a value in a appsetting.json?

标准 Azure 存储队列触发行……

public async void ProcessQueueMessage([QueueTrigger("queue-abc")] string message, ILogger logger)

问题: 我想在 Azure WebJob 的初始加载期间根据 appsetting.json.

中的值设置“QueueTrigger”值 (queue-abc)

我正在用 .Net Core 3.1 编写

这可能吗?

在回答后添加:https://docs.microsoft.com/en-us/azure/app-service/webjobs-sdk-how-to#custom-binding-expressions

如果您想使用来自 appsettings.json 的设置(或来自 Function App 的应用程序设置),您可以在触发器属性中使用用百分号括起来的设置名称。

例如:

appsettings.json

{
  "Values": {
    "QUEUENAME": "SomeQueueName"
  }
}

Azure 函数

[FunctionName("QueueTrigger")]
public static void Run(
    [QueueTrigger("%QUEUENAME%")]string myQueueItem, 
    ILogger log)
{
    log.LogInformation($"C# Queue trigger function processed: {myQueueItem}");
}