Rebus OneWayClient 如果不存在则创建队列

dar*_*ffo 2 rebus

当配置为单向客户端(RabbitMq 和 Azure)时,我在使用 rebus 发送消息(而不是发布)时遇到错误,因为队列必须存在。

如果在发送消息之前不存在队列,是否可以使用 OneWayClient 创建队列?

moo*_*000 6

如果目标队列不存在,Rebus 的 RabbitMQ 传输故意不创建目标队列\xc2\xa0\xe2\x80\x93,而是抛出异常。

\n

这样,它的行为与 MSMQ、Azure 服务总线、Amazon SQS 等其他传输保持一致,因为如果您不小心发送到不存在的队列,它们都会抛出异常。

\n

这种行为背后的原因是,如果您发送到不存在的队列 \xe2\x80\x93 ,它几乎总是一个错误,因为,当您向队列发送消息时,这表明您关心该队列消息,并且您关心某个特殊的人会拥有它,但如果那个特殊的人不存在,您很可能希望尽快知道它。

\n