nservicebus用户无法使用unbuscriber

时间:2010-07-06 15:02:43

标签: nservicebus nservicebus-distributor

您好我在我的项目中使用NServiceBus 1.9 RTM。
我正在使用Publisher - Distributor - Subscriber模型。
在订阅者中,我使用以下代码订阅

 var bus = NServiceBus.Configure.With()
                .SpringBuilder()                    
                    .XmlSerializer()
                .MsmqTransport()
                    .IsTransactional(false)
                    .PurgeOnStartup(false)
                .UnicastBus()
                    .ImpersonateSender(false)
                    .DoNotAutoSubscribe()
                    .LoadMessageHandlers()
                .CreateBus()
                .Start();
                bus.Subscribe<ITestMessage>();
                _isSubscribed = true;
                log.Info(" ITestMessage Subscribed successfully..");
                _serviceBus = bus;

当我想要取消订阅时,我正在做

_serviceBus.Unsubscribe<ITestMessage>();

但它不是取消订阅也不是抛出任何错误。在取消编写后,EventHandler仍然会收到来自经销商的消息。

有什么我想念的吗?任何人都可以帮助我。


NRK

1 个答案:

答案 0 :(得分:1)

您需要了解取消订阅不是针对分销商而是针对发布商的。现在,可能是您没有在MessageEndpointMappings中为ITestMessage的发布者配置正确的端点,这就是取消订阅无效的原因。订阅可能也不起作用,但是您已经正确配置了分发服务器,而其他人已经告诉发布者订阅了ITestMessage的分销商这一事实,这可能是隐藏的。

希望有所帮助。