Gewusst wie: Nachrichtenaustausch mit WCF-Endpunkten und Message Queuing-Anwendungen

Sie können vorhandene Message Queuing (MSMQ)- Anwendungen mit Windows Communication Foundation (WCF)-Anwendungen integrieren, indem Sie mithilfe der Bindung für die MSMQ-Integration MSMQ-Nachrichten in WCF-Nachrichten und WCF-Nachrichten in MSMQ-Nachrichten konvertieren. So können Sie mit WCF-Clients MSMQ-Empfängeranwendungen und mit MSMQ-Sendeanwendungen WCF-Dienste aufrufen.

In diesem Abschnitt wird erläutert, wie Sie MsmqIntegrationBinding für die Warteschlangenkommunikation zwischen (1) einem WCF-Client und einem mit System.Messaging geschriebenen MSMQ-Anwendungsdienst und (2) einem MSMQ-Anwendungsclient und einem WCF-Dienst verwenden können.

Ein vollständiges Beispiel, in dem das Aufrufen einer MSMQ-Empfängeranwendung von einem WCF-Client aus veranschaulicht wird, finden Sie im Beispiel unter Windows Communication Foundation to Message Queuing.

Ein vollständiges Beispiel, in dem das Aufrufen eines WCF-Diensts von einem MSMQ-Client aus veranschaulicht wird, finden Sie im Beispiel unter Message Queuing to Windows Communication Foundation.

So erstellen Sie einen WCF-Dienst, der Nachrichten von einem MSMQ-Client empfängt

  1. Definieren Sie wie im folgenden Beispielcode gezeigt eine Schnittstelle, die den Dienstvertrag für den WCF-Dienst definiert, der die über eine Warteschlange geleiteten Nachrichten einer MSMQ-Sendeanwendung empfängt:

  2. Implementieren Sie die Schnittstelle, und wenden Sie das ServiceBehaviorAttribute-Attribut wie im folgenden Beispielcode gezeigt auf die Klasse an.

  3. Erstellen Sie eine Konfigurationsdatei, die die MsmqIntegrationBinding angibt.

  4. Instanziieren Sie ein ServiceHost-Objekt, das die konfigurierte Bindung verwendet.

So erstellen Sie einen WCF-Client, der Nachrichten an eine MSMQ-Empfängeranwendung sendet

  1. Definieren Sie wie im folgenden Beispielcode gezeigt eine Schnittstelle, die den Dienstvertrag für den WCF-Client definiert, der über eine Warteschlange geleitete Nachrichten an den MSMQ-Empfänger sendet:

  2. Definieren Sie eine Clientklasse, über die der WCF-Client den MSMQ-Empfänger aufruft.

  3. Erstellen Sie eine Konfiguration, die die Verwendung der MsmqIntegrationBinding-Bindung angibt.

  4. Erstellen Sie eine Instanz der Clientklasse, und rufen Sie die vom Nachrichten empfangenden Dienst definierte Methode auf.

Siehe auch

Aufgaben

Gewusst wie: Austauschen von Nachrichten in einer Warteschlange mit WCD-Endpunkten

Konzepte

Warteschlangenübersicht