如何为 WebJob 侦听器指定特定队列
How to specify a specific queue to a WebJob listener
这是我觉得自己过去已经解决的问题之一,但我似乎无法自动取款。我有一个 WebJob,我只想监听队列中的消息:
public static void ProcessQueueMessage(
[QueueTrigger("myqueue")] string message,
TextWriter log)
运行 它在本地运行,但是当我向 myqueue
添加一条消息时没有任何反应。我很确定原因是队列触发器不知道在哪里寻找我的队列。我感觉QueueTrigger应该有一个连接字符串属性,但是没有。
我尝试使用服务总线上 RootManageSharedAccessKey
的连接字符串作为 AzureWebJobsStorage
值(也尝试过仪表板),但它不喜欢任何一个连接字符串。如何将 Web 作业指向正确的服务总线?
QueueTrigger
监听存储队列,而不是服务总线队列。它默认使用 AzureWebJobsStorage
连接字符串。
如果需要处理服务总线消息,使用ServiceBusTrigger
属性:
public static void ProcessQueueMessage(
[ServiceBusTrigger("myqueue")] string message,
TextWriter log)
默认的连接字符串名称是AzureWebJobsServiceBus
。否则,您可以通过 Connection
属性.
为连接字符串设置应用程序设置的替代名称
有关详细说明,请参阅 docs。
这是我觉得自己过去已经解决的问题之一,但我似乎无法自动取款。我有一个 WebJob,我只想监听队列中的消息:
public static void ProcessQueueMessage(
[QueueTrigger("myqueue")] string message,
TextWriter log)
运行 它在本地运行,但是当我向 myqueue
添加一条消息时没有任何反应。我很确定原因是队列触发器不知道在哪里寻找我的队列。我感觉QueueTrigger应该有一个连接字符串属性,但是没有。
我尝试使用服务总线上 RootManageSharedAccessKey
的连接字符串作为 AzureWebJobsStorage
值(也尝试过仪表板),但它不喜欢任何一个连接字符串。如何将 Web 作业指向正确的服务总线?
QueueTrigger
监听存储队列,而不是服务总线队列。它默认使用 AzureWebJobsStorage
连接字符串。
如果需要处理服务总线消息,使用ServiceBusTrigger
属性:
public static void ProcessQueueMessage(
[ServiceBusTrigger("myqueue")] string message,
TextWriter log)
默认的连接字符串名称是AzureWebJobsServiceBus
。否则,您可以通过 Connection
属性.
有关详细说明,请参阅 docs。