Beispiel für die asynchrone Suche

In diesem Beispiel wird gezeigt, wie der asynchrone Suchvorgang aus einer Clientanwendung verwendet wird.

Beispieldetails

Der Vorteil dieses Entwurfsmusters besteht darin, dass der Client in Folge der Suchanforderung asynchron über die gefundenen Endpunkte benachrichtigt wird. Öffnen Sie die Datei Client.cs, um die Funktionsweise zu sehen. Beachten Sie, dass zwei Delegaten an den Ereignishandlern des DiscoveryClient-Objekts angefügt sind. Ein Delegat wird aufgerufen, wenn ein FindCompleted-Ereignis ausgelöst wird, und ein anderer Delegat wird jedes Mal aufgerufen, wenn ein FindProgressChanged-Ereignis ausgelöst wird. Im Beispiel wird gezeigt, wie Sie dieses Muster in der Anwendung verwenden können.

Dd483344.note(de-de,VS.100).gifHinweis:
In diesem Beispiel werden HTTP-Endpunkte verwendet. Zur Ausführung müssen die richtigen URL-ACLs hinzugefügt werden. Weitere Informationen finden Sie unter Konfigurieren von HTTP und HTTPS. Durch die Ausführung des folgenden Befehls mit erweiterten Berechtigungen werden die entsprechenden ACLs hinzugefügt. Es empfiehlt sich, die folgenden Argumente durch die Domäne und den Benutzernamen zu ersetzen, wenn der Befehl nicht funktioniert. netsh http add urlacl url=http://+:8000/ user=%DOMAIN%\%UserName%

So richten Sie das Beispiel ein, erstellen es und führen es aus

  1. Öffnen Sie die Datei AsyncFind.sln in Visual Studio 2010.

  2. Drücken Sie F6, um die Projektmappe zu erstellen.

  3. Öffnen Sie eine Visual Studio 2010-Eingabeaufforderung, und navigieren Sie zum Verzeichnis \WCF\Basic\Discovery\AsyncFind\CS\service\bin\Debug oder \WCF\Basic\Discovery\AsyncFind\VB\service\bin\Debug, und führen Sie Service.exe aus.

  4. Nachdem der Dienst gestartet wurde, navigieren Sie zum Verzeichnis \WCF\Basic\Discovery\AsyncFind\CS\client\bin\Debug oder WCF\Basic\Discovery\AsyncFind\VB\client\bin\Debug, und führen Sie Client.exe aus.

  5. Beobachten Sie, ob der Client den Dienst finden und aufrufen kann.

Dd483344.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\WCF\Basic\Discovery\AsyncFind