繁体   English   中英

如何从服务总线主题死信队列C#中读取?

[英]How to read from service bus topic deadletter queue c#?

下面的代码可以很好地读取服务总线队列死信,但是对于主题而言,即使更改路径后,它抛出异常路径也不正确。

string path= "QueueName";

MessagingFactory messageFactory = MessagingFactory.CreateFromConnectionString("ConnecitonString");

MessageReceiver deadletterReceiver = await         messageFactory.CreateMessageReceiverAsync(QueueClient.FormatDeadLetterPath(path), ReceiveMode.PeekLock);

MessageSender sender = await messageFactory.CreateMessageSenderAsync(path);

BrokeredMessage deadLetter = await deadletterReceiver.ReceiveAsync(TimeSpan.Zero);
if (deadLetter != null)
{

现在,我想对Service Bus Topic DeadLetter进行同样的操作,因此路径应为topicName/subscriptionName

 string path= "TopicName/SubscriptionName";

    MessagingFactory messageFactory = MessagingFactory.CreateFromConnectionString("ConnecitonString");

    MessageReceiver deadletterReceiver = await messageFactory.CreateMessageReceiverAsync(TopicClient.FormatDeadLetterPath(path), ReceiveMode.PeekLock);

    MessageSender sender = await messageFactory.CreateMessageSenderAsync(path);

    BrokeredMessage deadLetter = await deadletterReceiver.ReceiveAsync(TimeSpan.Zero);
    if (deadLetter != null)
    {

获取异常路径不正确...

主题没有死信队列,订阅则没有。 您需要使用什么SubscriptionClient.FormatDeadLetterPath(String,String)方法,传递主题和订阅名称。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM