“如何重置?”;“交货数量”;对于azure服务总线中的每条断开的消息?

“如何重置?”;“交货数量”;对于azure服务总线中的每条断开的消息?,azure,azureservicebus,Azure,Azureservicebus,在实时情况下,我几乎没有azure服务总线队列。每个队列都有自己的消息传递计数默认限制。当超过传递计数时,消息将移动到“死信队列” 现在,我必须将死信消息重新发布到原始队列以进行重新处理。由于投递数量,它将邮件推回到死信状态 我不想更改队列最大传递计数。现在,我如何重置每个断开邮件的传递计数?Azure Service Bus by design本身不支持邮件重新提交。没有内置的机制将完全相同的消息从死信队列重新发送回队列 因此,“repost”表示您正在从DLQ检索一条消息,然后使用从DLQ消

在实时情况下,我几乎没有azure服务总线队列。每个队列都有自己的消息传递计数默认限制。当超过传递计数时,消息将移动到“死信队列”

现在,我必须将死信消息重新发布到原始队列以进行重新处理。由于投递数量,它将邮件推回到死信状态


我不想更改队列最大传递计数。现在,我如何重置每个断开邮件的传递计数?

Azure Service Bus by design本身不支持邮件重新提交。没有内置的机制将完全相同的消息从死信队列重新发送回队列

因此,“repost”表示您正在从DLQ检索一条消息,然后使用从DLQ消息复制的属性创建一条新消息,最后将此新消息提交到原始队列


此时,新邮件的传递计数应为0。Azure Service Bus by design本身不支持邮件重新提交。没有内置的机制将完全相同的消息从死信队列重新发送回队列

因此,“repost”表示您正在从DLQ检索一条消息,然后使用从DLQ消息复制的属性创建一条新消息,最后将此新消息提交到原始队列


此时,新邮件的传递计数应为0。

如何将DLQ中的邮件重新发送到队列?如何将DLQ中的邮件重新发送到队列?即使是新邮件也会包含传递计数。据我所知,这是不可能的。新消息就是新消息,它怎么知道旧消息的传递计数呢?您如何将DLQ中的消息重新发布到队列中?是@Mikhail说的。要“重新提交”,您需要使用复制的有效负载/标题创建一条全新的消息。
BrokeredMessage deadmessage=deadLetterQueueclient.Receive();字节[]rawData=deadmessage.GetBody();BrokeredMessage postNewMessage=新BrokeredMessage(原始数据)
这肯定会重置
DeliveryCount
即使是新邮件也会携带DeliveryCount。据我所知,这是不可能的。新消息就是新消息,它怎么知道旧消息的传递计数呢?您如何将DLQ中的消息重新发布到队列中?是@Mikhail说的。要“重新提交”,您需要使用复制的有效负载/标题创建一条全新的消息。
BrokeredMessage deadmessage=deadLetterQueueclient.Receive();字节[]rawData=deadmessage.GetBody();BrokeredMessage postNewMessage=新BrokeredMessage(原始数据)这将确保重置
交货计数