Konfigurationsbasierte Aktivierung

In diesem Beispiel wird die Aktivierung von Windows Communication Foundation (WCF)-Diensten ohne SVC-Datei veranschaulicht.

Dd807499.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\Services\Hosting\ConfigBasedActivation

Beispieldetails

In diesem Beispiel ist der Client der WCF-Testclient, und der Dienst wird in IIS gehostet.

Dd807499.note(de-de,VS.100).gifHinweis:
Die Setup- und Erstellungsanweisungen für dieses Beispiel befinden sich am Ende dieses Abschnitts.

Aktivierung von Diensten ohne SVC-Datei

In .NET Framework 3.5 war eine SVC-Datei zum Aktivieren eines Diensts erforderlich. Das führte zu zusätzlichem Verwaltungsaufwand, da neben der Anwendung eine weitere Datei bereitgestellt und verwaltet werden musste. Seit der Veröffentlichung von .NET Framework, Version 4 können die Aktivierungskomponenten mit der Anwendungskonfigurationsdatei konfiguriert werden.

In .NET Framework 4 wird ein neues Konfigurationselement (ServiceActivationElement), in den ServiceHostingEnvironmentSection der Anwendungskonfigurationsdatei eingeführt. Die ServiceHostingEnvironmentSection-Auflistung akzeptiert eine Auflistung von Diensten für die Aktivierung, wie im folgenden Codebeispiel gezeigt.

<serviceActivations>
   <add relativeAddress="Calculator.svc" service="Microsoft.ServiceModel.Samples.CalculatorService" />


<serviceActivations>

Die Konfiguration ähnelt offensichtlich der Konfiguration von SVC-Dateien. Ein zusätzliches Attribut, das eingeführt wird, ist das relativeAddress-Attribut, das die Adresse des Diensts bereitstellt. Die relative Adresse ist auch der virtuelle Pfad für den Dienst. Der Host ruft die Datei Web.config aus dem virtualPath-Speicherort ab, wenn sie vorhanden ist; andernfalls führt der Host im übergeordneten Ordner eine rekursive Suche durch.

Dd807499.note(de-de,VS.100).gifHinweis:
Dieses Beispiel muss in IIS gehostet werden, um zu funktionieren.

So verwenden Sie dieses Beispiel

  1. Öffnen Sie die Datei Service.csproj mit Visual Studio 2010.

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

  3. Testen Sie den Dienst, indem Sie WCFTestClient.exe ausführen.

  4. Navigieren Sie im Windows-Explorer zum Ordner %SystemDrive%\Programme\Microsoft Visual Studio 10.0\Common7\IDE.

  5. Führen Sie WcfTestClient.exe aus.

  6. Legen Sie die MEX-Adresse des Diensts fest.

  7. Drücken Sie STRG+UMSCHALT+A, um die Dienstadresse festzulegen.

  8. Legen Sie die Adresse auf https://localhost/ServiceModelSamples/Calculator.svc fest.

  9. Führen Sie den Add-Vorgang aus. Legen Sie den Wert für den n1-Parameter auf 10 und den Wert für den n2-Parameter auf 15 fest.

  10. Klicken Sie auf Aufrufen.

    Das erwartete Ergebnis lautet 25.

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

  1. Vergewissern Sie sich, dass Sie Einmaliges Setupverfahren für Windows Communication Foundation-Beispiele ausgeführt haben.

  2. Zum Erstellen der C#- oder Visual Basic .NET-Edition der Projektmappe befolgen Sie die unter Erstellen der Windows Communication Foundation-Beispiele aufgeführten Anweisungen.

  3. Nachdem die Projektmappe erstellt wurde, führen Sie Setup.bat aus, um die ServiceModelSamples-Anwendung in IIS einzurichten. Das Verzeichnis ServiceModelSamples sollte jetzt als IIS-Anwendung angezeigt werden.

  4. Wenn Sie das Beispiel in einer Konfiguration mit einem Computer oder über Computer hinweg ausführen möchten, folgen Sie den unter Running the Windows Communication Foundation Samples aufgeführten Anweisungen.