我正在尝试通过easynetQ使用基于主题的路由。 在我的设置中,我有3个队列(“A.B”,“A.C”,“B.C”)并交换“ex”。所有三个队列都通过路由键“A.B”,“A.C”,“B.C”连接到“ex”。
以下是我的代码。
var bus = RabbitHutch.CreateBus(MQConnectionString).Advanced;
var exchange = Exchange.DeclareTopic("ex");
using (var publishChannel = bus.OpenPublishChannel())
{
Message pat = new Message();
while (i++ < 10)
{
pat.Name = "Vamsee-" + i;
pat.ID = Guid.NewGuid().ToString();
if(i%3==0)
publishChannel.Publish(exchange, "A.*", new Message<Message>(pat));
else
publishChannel.Publish(exchange, "A.C", new Message<Message>(pat));
}
}
当我的代码发布到“A. ”时,消息不会发送到所有(或)任何队列。我试过“。*”,“#”
请建议
由于 Vamsee
答案 0 :(得分:1)
你有错误的方法。您需要使用完整路由密钥发布每条消息。队列可以使用通配符或特定绑定键绑定,以便它们接收正确的消息。如果您为消费者提供代码,则可能更容易更准确地诊断问题