【发布时间】:2020-02-21 09:20:59
【问题描述】:
我在我的 Azure 帐户中创建了一个服务总线主题 (my-topic)。我已经为该主题创建了一个只听规则 (listen_rule),并且还为该主题创建了一个订阅 (my-subscription),以便我的代码触发。
如何将特定订阅/规则添加到[ServiceBusTrigger]?
在 app.config 我有这个配置部分:
<add key="MySubscription" value="my-subscription" />
<add key="MyTopic" value="Endpoint=sb://XXXXXXX.servicebus.windows.net/;SharedAccessKeyName=listen_rule;SharedAccessKey=XXXX=;EntityPath=my-topic"/>
在我的代码中:
public async Task ProcessMyMessageAsync(
[ServiceBusTrigger("%MyTopic%", "%MySubscription%")]
BrokeredMessage brokeredMessage)
这会引发异常:
实体路径/名称“Endpoint=sb://XXXX.servicebus.windows.net/;SharedAccessKeyName=listen_rule;SharedAccessKey=XXXX=;EntityPath=topic”超过“50”个字符限制。
我在网上找到了很多示例,其中有一个通用的AzureWebJobsServiceBus 连接字符串,但是它可以访问整个服务总线,我想将其锁定到这个特定的主题/规则。
附言 我正在使用 .NET framework 4.5.2(是的,我知道,这是一个旧应用程序)和 Microsoft.Azure.WebJobs.ServiceBus 2.0.0。
p.p.s.理想情况下,如果可能,我想在一个配置行中指定整个订阅。
【问题讨论】:
标签: c# azure .net-4.5 servicebus