2010-12-21 10 views
0

Diese Frage bezieht sich auf this one.Wie lautet die tatsächliche MSMQ-Adresse, die von der jeweiligen WCF-Bindung verwendet wird?

Vorausgesetzt, dass WCF-Bindung verwendet net.msmq:// URL, zum Beispiel net.msmq://server/private/nc_queue, wie kann man wissen, was ist die tatsächliche MSMQ-Adresse, auf die diese URL übersetzt wird? Gibt es eine Art von Spur, die aktiviert werden kann? Oder ein externes Tool, mit dem man die Adresse erfassen kann?

Danke.

EDIT1

OK, verdanke ich eine Klarstellung. Man kann direkt mit MSMQ über die entsprechende .NET API sprechen. Im Fall von MSMQ über seiner nativen Port 1801, würde ich diese MSMQ-Adresse verwenden:

FormatName:Direct=OS:server\private$\nc_queue 

Wenn MSMQ über HTTP konfiguriert, die Adresse ändert etwas wie folgt aus:

FormatName:Direct=http://server/msmq/nc_queue 

Aber der WCF Binden eine Standard-URL verwenden die Adresse, wie zu beschreiben:

net.msmq://server/private/nc_queue 

Also, wie kann ich wissen, was die tatsächliche MSMQ-Adresse (die mit dem Formatnamen), zu dem die net.msmq:// Sy benannt?

Antwort

2

Ich verstehe Ihre Frage nicht wirklich .... Wenn Sie den WCF netMsmqBinding verwenden, löschen Sie im Grunde MSMQ-Nachrichten in eine MSMQ-Warteschlange. Also, was Sie wirklich haben, ist ein Warteschlangennamen, dass Sie es zu tun haben - nicht eine URL .....

net.msmq://server/private/nc_queue 

Dies schlägt sich in einer MSMQ private Warteschlange nc_queue auf server genannt - so was ist es wirklich das versuchst du zu tun? Ich verstehe es nicht ..... vorsichtig zu klären ??

In der Zwischenzeit Besuche Tom Hollander Blog-Post dreiteiligen Serie auf MSMQ, WCF und IIS:

Update: Ich glaube, ich beginne, Ihre Probleme zu verstehen - wenn Sie die WCF netMsmqBinding verwenden, y ou're Verbindung zu MSMQ direkt - das ist nicht "MSMQ-über-HTTP". Wenn Sie MSMQ-over-HTTP von einem WCF-Client aus einrichten und verwenden möchten, von dem, was ich verstehe, würden Sie mit einem normalen regulären HTTP-Dienst sprechen, also müssen Sie basicHttpBinding (oder wsHttpBinding) - nicht verwenden die spezifische netMsmqBinding.

+0

Ich habe die Frage bearbeitet. – mark

+0

@mark: aktualisiert meine Antwort auch :-) –

+0

Ich bezweifle das. wsHttpBinding verfügt nicht über die MSMQ-spezifischen Parameter. – mark

Verwandte Themen