Freigeben über


NetContextExchangeCorrelation

Dieses Thema gilt für Windows Workflow Foundation 4.

In diesem Beispiel wird veranschaulicht, wie die Messagingaktivitäten mit kontextbasierter Korrelation verwendet werden können, damit Korrelationshandles oder Abfragen nicht mehr explizit angegeben werden müssen.

Beispieldetails

In diesem Beispiel wird das .NET Context Exchange-Protokoll verwendet, das in .NET Framework, Version 3.5 eingeführt wurde. Im Protokoll wird das Nachrichtenaustauschmuster beschrieben, mit dem sichergestellt wird, dass eine Clientanwendung mit der richtigen Instanz des Diensts kommuniziert, indem ein bekannter Nachrichtenheader (der Kontextheader) verwendet wird. In .NET Framework, Version 4 ist dieser Mechanismus nur ein bestimmter Typ der Korrelation: eine kontextbasierte Korrelation.

Der ContextService gibt den Nachrichtenheader der Antwortnachricht des ersten Vorgangsaufrufs zurück (OpenBankAccount), und der Client ist dafür zuständig, dass dieser Header wieder an die nachfolgenden Aufrufe (Deposit und Withdraw) angefügt wird. Der ContextClient verwendet hierzu die CorrelationScope-Aktivität. Da der ContextService in WorkflowServiceHost gehostet wird, wird für diesen Workflow ein impliziter CorrelationScope erstellt, der eine automatische kontextbasierte Korrelation ermöglicht.

So verwenden Sie dieses Beispiel

  1. Öffnen Sie die Projektmappe "NetContextExchangeCorrelation.sln" in Visual Studio 2010.

  2. Drücken Sie STRG+UMSCHALT+B, um die Projektmappe zu erstellen.

  3. Legen Sie mehrere Startprojekte fest, indem Sie mit der rechten Maustaste auf Projektmappe klicken und Startprojekte festlegen auswählen. Fügen Sie ContextService und ContextClient (in dieser Reihenfolge) als mehrere Startprojekte hinzu.

  4. Drücken Sie STRG+F5, um die Anwendung auszuführen. In der Konsole ContextClient wird angezeigt, welche Aufrufe an den Dienst erfolgt sind. In der Konsole ContextService wird angezeigt, dass diese Aufrufe empfangen und verarbeitet wurden.

Ee662963.Important(de-de,VS.100).gif Hinweis:
Die Beispiele sind möglicherweise bereits auf dem Computer installiert. Überprüfen Sie das folgende (standardmäßige) Verzeichnis, bevor Sie fortfahren.

<Installationslaufwerk>:\WF_WCF_Samples

Wenn dieses Verzeichnis nicht vorhanden ist, rufen Sie Windows Communication Foundation (WCF) and Windows Workflow Foundation (WF) Samples for .NET Framework 4 auf, um alle Windows Communication Foundation (WCF)- und WF-Beispiele herunterzuladen. Dieses Beispiel befindet sich im folgenden Verzeichnis.

<Installationslaufwerk>:\WF_WCF_Samples\WF\Basic\Services\NETContentExchangeCorrelation