创建可以处理多个队列的 Azure.Storage.Queues 客户端
Posted
技术标签:
【中文标题】创建可以处理多个队列的 Azure.Storage.Queues 客户端【英文标题】:Creating a Azure.Storage.Queues client that can handle multiple queues 【发布时间】:2021-03-01 09:18:06 【问题描述】:我正在将我的代码从 Microsoft.WindowsAzure.Storage.Queue
迁移到 Azure.Storage.Queues
。在我的应用程序中,我将我使用的所有队列操作包装在 MyQueueClient
类中。创建队列客户端的旧方法如下:
CloudStorageAccount account = CloudStorageAccount.Parse(ConnectionString);
CloudQueueClient client = account.CreateCloudQueueClient();
因为我有多个队列,所以这种方法对我来说效果很好。在新方法中,看起来我需要将队列名称作为参数之一传递来创建队列客户端——请参阅文档:https://docs.microsoft.com/en-us/azure/storage/queues/storage-dotnet-how-to-use-queues?tabs=dotnet#create-the-queue-service-client
QueueClient queueClient = new QueueClient(connectionString, queueName);
所以,我在这里有点困惑。这是否意味着,我必须为我使用的每个队列创建一个单独的队列客户端?比如说,我有 3 个队列,这是否意味着我必须创建 3 个队列客户端?似乎没有意义。我在这里错过了什么?
【问题讨论】:
【参考方案1】:您可以使用下面的代码:
QueueServiceClient queueServiceClient = new QueueServiceClient(connectionString);
那么您可以使用基于queueServiceClient
的方法(注意,与旧方法相比,它可能有一些限制)。
【讨论】:
感谢您也帮我解决这个问题 :-)以上是关于创建可以处理多个队列的 Azure.Storage.Queues 客户端的主要内容,如果未能解决你的问题,请参考以下文章
切换到 Azure.Storage.Queues 后 Azure 函数中的模型绑定问题
版本 12+ 中是不是有 Azure.Storage.Queue 的 ContinuationToken