Ermitteln eines Diensts mit UniqueListenUriMode (Beispiel)Discover a Service with Unique Listen Uri Mode Sample

In diesem Beispiel wird veranschaulicht, wie ein Dienst ermittelt wird, dessen ListenUriMode-Eigenschaft auf Unique festgelegt ist.This sample demonstrates how to discover a service that has the ListenUriMode property set to Unique. Wenn die ListenUriMode-Eigenschaft auf Unique festgelegt ist, wird die Eindeutigkeit des ListenUri sichergestellt, indem entweder der Port eindeutig festgelegt wird oder der Pfad durch Anhängen einer GUID eindeutig festgelegt wird.When the ListenUriMode property is set to Unique, the ListenUri is ensured to be unique by either setting the port to be unique or for the path to be unique by appending a GUID.

Funktionen des DienstsFeatures on the Service

Die ListenUriMode-Eigenschaft wird für den TCP-Endpunkt auf Unique festgelegt.The ListenUriMode property is set to Unique for the TCP endpoint. Der Dienst wird dann über eine UdpDiscoveryEndpoint-Endpunkt ermittelbar gemacht.The service is then made discoverable over a UdpDiscoveryEndpoint endpoint.

Funktionen des ClientsFeatures on the Client

Dieser Client stellt mithilfe der Via.Uri-Methode eine Verbindung mit dem Dienst mit dem richtigen Find her.This client connects to the service using the correct Via.Uri by using the Find method. Es wird dann eine Abfrage an die von der Methode zurückgegebenen FindResponse gesendet, ob ein gültiger ListenUri darin enthalten ist und dieser sich vom Address.Uri unterscheidet.The FindResponse that is returned from the method is then queried for whether it contains a valid ListenUri and whether it is different than Address.Uri. Die entsprechenden Informationen werden dann an die InvokeCalculatorService-Methode übergeben.The appropriate information is then passed to the InvokeCalculatorService method. In der InvokeCalculatorService-Methode wurde der ListenUri vom Aufrufer übergeben. Danach wird dem Clientendpunkt ein ClientViaBehavior mit dem richtigen Via.Uri hinzugefügt.In the InvokeCalculatorService method, the ListenUri was passed in by the caller, then a ClientViaBehavior with the correct Via.Uri is added to the client’s endpoint.

So verwenden Sie dieses BeispielTo use this sample
  1. Öffnen Sie UniqueListenUriMode.sln mit Visual Studio 2012Visual Studio 2012.Using Visual Studio 2012Visual Studio 2012, open UniqueListenUriMode.sln.

  2. Drücken Sie STRG+UMSCHALT+B, um die Projektmappe zu erstellen.To build the solution, press CTRL+SHIFT+B.

  3. Führen Sie die Dienstanwendung aus, die im Ordner [Projektmappenbasisverzeichnis]\service\bin\debug generiert wird.Run the service application, which is generated in the [solution base directory]\service\bin\debug folder.

  4. Führen Sie die Clientanwendung aus, die im Ordner [Projektmappenbasisverzeichnis]\Client\bin\debug generiert wird.Run the client application, which is generated in the [solution base directory]\Client\bin\debug folder.

    Der Client sucht den ausgeführten Dienst und schreibt die vom Endpunkt des Diensts veröffentlichten Metadaten in die Konsole.The client locates the running service and writes to the console the metadata published by the service’s endpoint.

Wichtig

Die Beispiele sind möglicherweise bereits auf dem Computer installiert.The samples may already be installed on your machine. Suchen Sie nach dem folgenden Verzeichnis (Standardverzeichnis), bevor Sie fortfahren.Check for the following (default) directory before continuing.

<InstallDrive>:\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)Windows Communication Foundation (WCF) - und WFWF -Beispiele herunterzuladen.If this directory does not exist, go to Windows Communication Foundation (WCF) and Windows Workflow Foundation (WF) Samples for .NET Framework 4 to download all Windows Communication Foundation (WCF)Windows Communication Foundation (WCF) and WFWF samples. Dieses Beispiel befindet sich im folgenden Verzeichnis.This sample is located in the following directory.

<InstallDrive>:\WF_WCF_Samples\WCF\Basic\Discovery\UniqueListenUriMode

Siehe auchSee Also