gpt4 book ai didi

azure - 使用服务总线触发器在 Azure 函数中引用配置中的主题和订阅名称

转载 作者:行者123 更新时间:2023-12-03 09:47:38 24 4
gpt4 key购买 nike

我有一个带有服务总线主题触发器的 Azure 服务总线。我的函数看起来像这样

[FunctionName("SbListener")]
public static async Task Run(
[ServiceBusTrigger("test-topic", "test-sub-1", Connection = "ServiceBus")]string message,
[Inject("Microsoft.EventStore.Functions", true)] IWebNotificationManagerFactory webNotificationManagerFactory,
[Inject("Microsoft.EventStore.Functions", true)] ILogger logger)
{ ... }

我的服务总线的配置位于 local.settings.json 文件中。

"ConnectionStrings": {
"ServiceBus": "Endpoint=sb://<my-sb>.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=<my-key>"
}

我想要的是我也想从配置文件中引用主题名称,而不是在 ServiceBusTrigger 中对它们进行硬编码。问题是,如果我更改订阅名称,那么我将不得不重新部署函数代码(我想不惜一切代价避免这种情况)。

最佳答案

将主题和订阅放入 local.settings.json(门户中的应用程序设置)的 Values 中,并使用应用程序设置绑定(bind)表达式引用它们 - 用 % 包裹应用程序设置名称,检查doc .

[ServiceBusTrigger("%Topic%", "%Subscription%", Connection = "ServiceBus")]string message

此外,我建议您将 ServiceBus 连接字符串也放入 Values 中,ConnectionStrings 通常由通常从中获取连接字符串的框架使用配置文件(例如 Entity Framework )的 ConnectionStrings 部分。请参阅doc .

关于azure - 使用服务总线触发器在 Azure 函数中引用配置中的主题和订阅名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54828387/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com