【问题标题】:Checking status of message insert to Azure Queue检查消息插入到 Azure 队列的状态
【发布时间】:2021-05-25 12:45:04
【问题描述】:

我有 1 个关于 Azure 队列的问题。向 Azure 队列插入 1 条消息后,如何检查此消息是否已成功插入到我的代码 (.net) 中?

我的解决方案是检查队列中已存储的消息数量,并在插入新消息队列后再次检查。我试图找到另一种解决方案。谢谢你帮助我

【问题讨论】:

  • 您使用SDK发送信息吗?如果是这样,则返回值应该是响应。它可以直接告诉你传输是否成功。
  • @BowmanZhu 我正在使用 Microsoft.WindowsAzure.Storage.Queue 库向队列发送消息,并且函数无效,所以我无法得到响应。抱歉,如果我误解了您的问题。

标签: c# .net azure-queues azure-storage-queues azure-storage-account


【解决方案1】:

更新:

Microsoft.WindowsAzure.Storage.Queue中'AddMessageAsync'方法的设计是这样的:

public virtual Task AddMessageAsync(CloudQueueMessage message);

它什么都不返回,所以你有两种方法:

第一个就像你说的那样,获取队列中的消息数量并在添加消息后检查。

第二个是将逻辑放在try-catch中,如果添加消息不成功则返回异常。

原答案:

看看这个 API 参考:

https://docs.microsoft.com/en-us/dotnet/api/azure.storage.queues.queueclient.sendmessage?view=azure-dotnet

sendmessage 方法的返回类型是响应,所以我想你不需要获取消息的数量。只需检查响应状态即可。

【讨论】:

  • 是的,我正在使用 Microsoft.WindowsAzure.Storage.Queue 库将消息插入队列,我的函数是 AddMessageAsync() (void) 所以我无法得到这个响应。
  • @haipham 由于此方法不返回任何信息,我认为您有两种方法。如您所说,第一个检查发送前后队列中的消息数。二是将发送逻辑放入try-catch,如果发送不成功,可以抛出异常。
  • 是的,这是个好主意,我忘了如果不成功,它会抛出异常。让我试试,谢谢支持我
猜你喜欢
  • 2018-08-26
  • 1970-01-01
  • 2012-06-01
  • 2016-06-16
  • 2019-04-18
  • 2013-09-18
  • 1970-01-01
  • 1970-01-01
  • 2019-09-16
相关资源
最近更新 更多