Voorbeeld van SystemWebRouting-integratie
Het webroutingIntegration-voorbeeld demonstreert de integratie van de hostinglaag met de klassen in de System.Web.Routing naamruimte. Met de klassen in de System.Web.Routing naamruimte kan een toepassing URL's gebruiken die niet rechtstreeks overeenkomen met een fysieke resource. Met webroutering kan de ontwikkelaar virtuele adressen maken voor HTTP die vervolgens worden toegewezen aan werkelijke WCF-services. Dit is handig wanneer een WCF-service moet worden gehost zonder een fysiek bestand of een fysieke resource, of wanneer services moeten worden geopend met URL's die geen bestanden bevatten, zoals .html of .aspx. In dit voorbeeld ziet u hoe u de RouteTable klasse gebruikt om virtuele URI's te maken die zijn toegewezen aan actieve services die zijn gedefinieerd in global.asax.
Notitie
De klassen in de System.Web.Routing naamruimte werken alleen voor services die worden gehost via HTTP.
In dit voorbeeld wordt WCF gebruikt om twee RSS-feeds te maken: een movies
feed en een channels
feed. De URL's voor het activeren van de services bevatten geen extensie en zijn geregistreerd in de Application_Start
methode van de Global
klasse die is afgeleid van de HttpApplication klasse.
Notitie
Dit voorbeeld werkt alleen in IIS (Internet Information Services) 7.0 en hoger, omdat IIS 6.0 een andere methode gebruikt voor het ondersteunen van URL's die geen extensie nodig hebben.
Dit voorbeeld gebruiken
Open met Visual Studio het WebRoutingIntegration.sln-bestand.
Druk op F5 om de oplossing uit te voeren en de webserver te starten.
Er wordt een lijst met mappen voor het voorbeeld weergegeven. Houd er rekening mee dat er geen bestanden zijn met de extensie .svc.
Voeg in de adresbalk toe
movies
aan de URL, zodat deze wordt gelezenhttp://localhost:[port]/movies
en druk op Enter.De filmsfeed wordt weergegeven in de browser.
Voeg in de adresbalk toe
channels
aan de URL, zodat deze wordt gelezenhttp://localhost:[port]/channels
en druk op Enter.De kanalenfeed wordt weergegeven in de browser.
Sluit de webbrowser door op Alt+F4 te drukken.
Als de ontwikkelserver niet is afgesloten, klikt u met de rechtermuisknop op het systeemvakpictogram en selecteert u Stoppen.
Dit voorbeeld gebruiken wanneer deze wordt gehost in IIS
Open met Visual Studio het WebRoutingIntegration.sln-bestand.
Bouw het project door op Ctrl+Shift+B te drukken.
Maak een webtoepassing in IIS-beheer (Internet Information Services).
Klik in IIS-beheer met de rechtermuisknop op de standaardwebsite en selecteer Een toepassing toevoegen.
Voor de alias typt u
WebRoutingIntegration
.Selecteer voor het fysieke pad de map Service in het project.
Druk op OK.
Start de toepassing door met de rechtermuisknop op de webtoepassing te klikken en Toepassing beheren te selecteren en vervolgens bladeren.
Voeg in de adresbalk toe
movies
aan de URL, zodat deze wordt gelezenhttp://localhost:[port]/movies
en druk op Enter.De filmsfeed wordt weergegeven in de browser.
Voeg in de adresbalk toe
channels
aan de URL, zodat deze wordt gelezenhttp://localhost:[port]/channels
en druk op Enter.De kanalenfeed wordt weergegeven in de browser.
Sluit de webbrowser door op Alt+F4 te drukken.
Dit voorbeeld laat zien dat de hostinglaag in staat is om met de klassen in de System.Web.Routing naamruimte samen te stellen voor het routeren van de aanvragen van services die worden gehost via HTTP.
Notitie
U moet de standaardversie van de groep van toepassingen bijwerken naar .NET Framework 4 als deze is ingesteld op versie 2.