2010-05-25 2 views
1

Je peux utiliser ce code pour obtenir l'adresse de retour.Comment obtenir le nom de la file d'attente que NServiceBus a extrait du message

string returnAddress = Bus.CurrentMessageContext.ReturnAddress; 

Mais comment puis-je obtenir le «à l'adresse» du message. c'est-à-dire la file d'attente que NServiceBus a tirée du message.

J'ai eu un coup d'œil à travers la source et il semble Bus.Transport.Address est ce que je veux, mais il n'y a pas get sur les transports

Note: Je suis dans la méthode « poignée » d'un gestionnaire de messages.

Répondre

2

Cela devrait être la même adresse qui se trouve dans votre section de configuration MsmqTransport. Vous devriez être en mesure de tirer cette section et saisir la valeur.

String address = Configure.ConfigurationSource.GetConfiguration<MsmqTransportConfig>().InputQueue; 
0

Semble je viens de l'obtenir injectais en ajoutant une propriété

public ITransport Transport { get; set; } 

Et puis en accédant

Transport.Address 

REMARQUE: se avère que dans la dernière source, il n'y a pas de propriété « Adresse » sur ITransport. Donc, cette réponse est pas correcte :(

https://nservicebus.svn.sourceforge.net/svnroot/nservicebus/trunk/src/unicastTransport/NServiceBus.Unicast.Transport/ITransport.cs

+0

pourquoi, pourquoi, pourquoi, j'ai besoin de cette propriété !!! :( – dariol

Questions connexes