Gewusst wie: Hosten eines WCF-Diensts in IIS

In diesem Thema werden die grundlegenden Schritte vorgestellt, die für die Erstellung eines in Internetinformationsdiensten (IIS) gehosteten Windows Communication Foundation (WCF)-Diensts erforderlich sind. Ein WCF-Dienst, der in der IIS-Umgebung ausgeführt wird, kann alle Features von IIS nutzen, beispielsweise die Prozesswiederverwendung, das Herunterfahren der Anwendung und ihrer Dienste bei Leerlauf, die Prozessüberwachung und die nachrichtenbasierte Aktivierung. Diese Hostingoption erfordert, dass IIS korrekt konfiguriert wurde, jedoch muss keinerlei Hostcode für die Anwendung geschrieben werden. Sie können IIS-Hosting nur mit einem HTTP-Transport verwenden.

Die Quellkopie dieses Beispiels finden Sie unter IIS Hosting Using Inline Code.

So erstellen Sie einen von IIS gehosteten Dienst

  1. Vergewissern Sie sich, dass IIS installiert ist und auf dem Computer ausgeführt wird.

  2. Erstellen Sie einen neuen Ordner für die Anwendungsdateien, stellen Sie sicher, dass ASP.NET auf den Inhalt des Ordners zugreifen kann, und verwenden Sie das IIS-Verwaltungstool, um eine neue IIS-Anwendung zu erstellen, die physisch in diesem Anwendungsverzeichnis gespeichert ist.

  3. Erstellen Sie eine neue Datei mit dem Namen "Service" und einer SVC-Erweiterung in der Anwendung. Bearbeiten Sie diese Datei, indem Sie die entsprechenden @ServiceHost-Direktiveninformationen für den Dienst hinzufügen. Die Dienstdatei für das CalculatorService-Beispiel enthält z. B. folgende Informationen:

    <%@ServiceHost language=c# Debug="true" Service="Microsoft.ServiceModel.Samples.CalculatorService"%>
    
  4. Erstellen Sie im Stammverzeichnis der Anwendung das Unterverzeichnis App_Code.

  5. Erstellen Sie eine Codedatei im App_Code-Unterverzeichnis.

  6. Definieren Sie den Dienstvertrag für den Diensttyp in der Codedatei.

  7. Implementieren Sie in der Codedatei den Dienstvertrag in einer Dienstklasse.

  8. Erstellen Sie eine Datei namens "Web.config" im Anwendungsverzeichnis. Um den Dienst ausführen zu können, muss sich die Datei Web.config im selben Verzeichnis wie die Datei Service.svc befinden.

  9. Fügen Sie den entsprechenden Konfigurationscode in die Datei ein. Die WCF-Infrastruktur verwendet zur Laufzeit diese Informationen, um einen Endpunkt zu erstellen, mit dem die Clientanwendung kommunizieren kann. Der Konfigurationscode für das CalculatorService-Beispiel wird im Folgenden gezeigt:

Beispiel

Der folgende Code zeigt den Inhalt der Codedatei mit dem Vertrag und seiner Implementierung in dem durch die Direktive in der Datei Service.svc angegebenen Namespace.

Siehe auch

Konzepte

Hosten in Internetinformationsdiensten
Hosting-Dienste