我有一个特殊的场景,RabbitMQ需要动态创建队列并绑定到交换,这些交换也是动态创建的(不是我)。此创建和绑定由新的SignalR订阅触发。
这个问题:https://github.com/MassTransit/MassTransit/issues/398是关于它的,但我仍然不知道答案。
似乎公共交通在移动中创造的东西不是很灵活。 我怎样才能做到这一点?如果我停止总线并重新创建所有队列和绑定以及新的队列,然后再次启动总线会怎么样?
提前致谢。
答案 0 :(得分:2)
您可以通过配置中的Host对象动态连接其他接收端点。
因此,您可以连接接收端点,如下面的代码所示: https://github.com/MassTransit/MassTransit/blob/develop/src/MassTransit.RabbitMqTransport.Tests/ReceiveEndpoint_Specs.cs#L53
host.ConnectReceiveEndpoint(" additional_queue",x => ...);