【发布时间】:2017-08-15 19:25:22
【问题描述】:
我在我们的 rebus 实现中使用 MSMQ 传输。下面是启动rebus服务的代码:
BuiltinHandlerActivator handlerActivator;
this.handlerActivator.Handle<TransportMessage>
(this.HandleTransportMessageAsync);
var bus = Configure.With(this.handlerActivator)
.Transport(t => t.UseMsmq(this.SenderName))
.Routing(r => r.TypeBased().AddEndpointMappingsFromAppConfig())
.Start();
我想处理异常/错误,以防有人使用 snoop/compmgmt.msc 意外删除消息队列。
当我在消息队列中手动删除 MSMQ 消息队列时,我们会收到文本错误
rebus 工作队列已删除 - 不会再收到任何消息
。
所以,想知道 Rebus 中是否有可能处理此异常并提供回调或任何其他方式?
我注意到 Rebus.MSMQ 命名空间中有一个名为 MsmqTransport 的类,它公开方法 AddQueueCallback 以提供类似的回调。由于我是 Rebus/MSMQ 的新手,我无法弄清楚如何使用它。任何支持都会有所帮助。
【问题讨论】: