Ich kann diesen Code verwenden, um die Absenderadresse zu erhalten.
string returnAddress = Bus.CurrentMessageContext.ReturnAddress;
Aber wie bekomme ich das "Ansprechen" der Nachricht? die Warteschlange, aus der NServiceBus die Nachricht abgerufen hat.
Ich habe mir die Quelle angesehen und es scheint, als ob Bus.Transport.Address das ist, was ich will, aber es gibt keinen Transport
Hinweis: Ich bin innerhalb der "Handle" -Methode eines Message-Handlers.
Antworten:
2 für die Antwort № 1Dies sollte dieselbe Adresse sein, die sich in Ihrem MsmqTransport-Konfigurationsabschnitt befindet. Sie sollten in der Lage sein, diesen Abschnitt zu ziehen und den Wert zu übernehmen.
String address = Configure.ConfigurationSource.GetConfiguration<MsmqTransportConfig>().InputQueue;
0 für die Antwort № 2
Anscheinend bekomme ich es einfach, indem ich eine Eigenschaft hinzufüge
public ITransport Transport { get; set; }
Und dann zugreifen
Transport.Address
HINWEIS: Es stellt sich heraus, dass in der neuesten Quelle keine Eigenschaft "Adresse" für ITransport vorhanden ist. Diese Antwort ist also nicht korrekt :(