2010-07-06 7 views
0

Bonjour
J'utilise NServiceBus 1.9 RTM dans mon projet. J'utilise le modèle Publisher - Distributor - Subscriber.
Dans abonné Je me suis abonné en utilisant le code follwoingL'abonné nservicebus ne peut pas se désinscrire

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; 

quand je veux unsbuscribe que je fais comme

_serviceBus.Unsubscribe<ITestMessage>(); 

Mais ce n'est pas désabonnement, ni jeter aucune erreur. Après le désabonnement, EventHandler reçoit toujours les messages du distributeur.

Y a-t-il quelque chose qui me manque ...? Est-ce que quelqu'un peut m'aider.


NRK

Répondre

1

Vous devez comprendre que la désinscription n'est pas quelque chose que vous faites contre le distributeur, mais plutôt contre l'éditeur. Maintenant, il se peut que vous n'ayez pas configuré le bon point de terminaison pour l'éditeur de votre ITestMessage dans vos MessageEndpointMappings, et c'est pourquoi le désabonnement ne fonctionne pas. Il est probable que l'abonnement ne fonctionne pas non plus, mais cela est masqué par le fait que vous avez configuré votre distributeur correctement, et que quelqu'un d'autre a demandé à l'éditeur de souscrire le distributeur pour ITestMessage.

Espérons que ça aide.

+0

Merci Udi, j'ai compris ce que vous voulez montrer. Mais comment puis-je empêcher le distributeur d'envoyer des messages à mon abonné? Ou Puis-je cesser de recevoir des messages du distributeur à partir d'une certaine durée? L'abonné s'exécute en tant que service Windows. - nRk – nRk

Questions connexes