Freigeben über


SystemWebRouting-Integrationsbeispiel

In diesem Beispiel wird die Integration der Hostebene in die Klassen im System.Web.Routing-Namespace veranschaulicht. Mit den Klassen im System.Web.Routing-Namespace können Anwendungen URLs verwenden, die einer physischen Ressource nicht direkt entsprechen. Webrouting ermöglicht es dem Entwickler, virtuelle Adressen für HTTP zu erstellen, die danach erneut tatsächlichen WCF-Diensten zugeordnet werden. Dies ist nützlich, wenn ein WCF-Dienst gehostet werden muss, ohne dass eine physische Datei oder Ressource erforderlich ist, oder wenn auf Dienste mit URLs zugegriffen werden muss, die keine Dateierweiterungen wie HTML oder ASPX enthalten. In diesem Beispiel wird veranschaulicht, wie mithilfe der RouteTable-Klasse virtuelle URIs erstellt werden können, die in global.asax definierten, ausgeführten Diensten zugeordnet werden. Für dieses Beispiel gibt es zwei mit WCF erstellte RSS-Feeds: ein movies-Feed und ein channels-Feed. Die URLs zur Aktivierung der Dienste enthalten keine Dateierweiterung und werden in der Application_Start-Methode registriert.

Ee523210.note(de-de,VS.100).gifHinweis:
Die Klassen im System.Web.Routing-Namespace können nur für Dienste verwendet werden, die über HTTP gehostet werden.

Ee523210.note(de-de,VS.100).gifHinweis:
Dieses Beispiel funktioniert nur in IIS 7.0, da Internetinformationsdienste (IIS) 6.0 eine andere Methode für die Unterstützung von URLs ohne Erweiterung verwendet.

Ee523210.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.

<Installationsverzeichnis>:\WF_WCF_Samples\WCF\Basic\Services\Hosting\WebRoutingIntegration

So verwenden Sie dieses Beispiel

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

  2. Drücken Sie F5, um die Projektmappe auszuführen und den Webentwicklungsserver zu starten.

    Eine Verzeichnisliste für das Beispiel wird angezeigt. Beachten Sie, dass es keine Dateien mit der Dateierweiterung SVC gibt.

  3. Fügen Sie der URL in der Adressleiste movies hinzu, sodass die Adresse nun https://localhost:[Port]/movies lautet, und drücken Sie die EINGABETASTE.

    Der Filmfeed (movies) wird im Browser angezeigt.

  4. Fügen Sie der URL in der Adressleiste channels hinzu, sodass die Adresse nun https://localhost:[Port]/channels lautet, und drücken Sie die EINGABETASTE.

    Der Channelfeed wird im Browser angezeigt.

  5. Schließen Sie den Webbrowser, indem Sie ALT+F4 drücken.

    Wenn der Entwicklungsserver nicht beendet wurde, klicken Sie mit der rechten Maustaste auf das Taskleistensymbol, und wählen Sie Beenden aus.

So verwenden Sie dieses Beispiel, wenn es in IIS gehostet wird

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

  2. Erstellen Sie das Projekt, indem Sie F6 drücken.

  3. Erstellen Sie eine Webanwendung im Internetinformationsdienste-Manager.

    1. Klicken Sie im IIS-Manager mit der rechten Maustaste auf Standardwebsite, und wählen Sie Eine Anwendung hinzufügen aus.

    2. Geben Sie für Alias die Zeichenfolge WebRoutingIntegration ein.

    3. Wählen Sie für Physikalischer Pfad den Dienstordner im Projekt aus.

    4. Drücken Sie OK.

  4. Starten Sie die Anwendung, indem Sie mit der rechten Maustaste auf die Webanwendung klicken und Anwendung verwalten, Durchsuchen auswählen.

  5. Fügen Sie der URL in der Adressleiste movies hinzu, sodass die Adresse nun https://localhost:[Port]/movies lautet, und drücken Sie die EINGABETASTE.

    Der Filmfeed (movies) wird im Browser angezeigt.

  6. Fügen Sie der URL in der Adressleiste channels hinzu, sodass die Adresse nun https://localhost:[Port]/channels lautet, und drücken Sie die EINGABETASTE.

    Der Channelfeed wird im Browser angezeigt.

  7. Schließen Sie den Webbrowser, indem Sie ALT+F4 drücken.

In diesem Beispiel wird gezeigt, dass die Hostebene mit den Klassen im System.Web.Routing-Namespace eingesetzt werden kann, um die Anforderungen von Diensten zu routen, die über HTTP gehostet werden.

Ee523210.note(de-de,VS.100).gifHinweis:
Aktualisieren Sie die Version des Standardanwendungspools auf .NET Framework, Version 4, wenn sie auf Version 2 festgelegt ist.