Esempio di integrazione di SystemWebRouting
In questo esempio viene descritta l'integrazione del livello di hosting con le classi nello spazio dei nomi System.Web.Routing. Le classi nello spazio dei nomi System.Web.Routing consentono a un'applicazione di utilizzare URL che non corrispondono direttamente a una risorsa fisica. L'utilizzo del routing Web consente allo sviluppatore di creare indirizzi virtuali per HTTP dei quali viene quindi eseguito il mapping ai servizi WCF effettivi. Ciò si rivela utile quando un servizio WCF deve essere ospitato senza richiedere una risorsa o un file fisico oppure quando l'accesso ai servizi deve essere eseguito con URL che non contengono estensioni di file quale html o aspx. In questo esempio viene descritto come utilizzare la classe RouteTable per creare URI virtuali mappati a servizi in esecuzione definiti in global.asax. Per questo esempio vengono utilizzati due feed RSS creati con WCF, ovvero un feed movies
e un feed channels
. Gli URL per l'attivazione dei servizi non contengono un'estensione di file e sono registrati nel metodo Application_Start.
Nota: |
---|
Le classi nello spazio dei nomi System.Web.Routing possono essere utilizzate solo per i servizi ospitati su HTTP. |
Nota: |
---|
Questo esempio può essere utilizzato solo in IIS 7.0, poiché Internet Information Services (IIS) 6.0 utilizza un metodo diverso per il supporto di URL senza estensione. |
Nota: |
---|
È possibile che gli esempi siano già installati nel computer. Verificare la directory seguente (impostazione predefinita) prima di continuare.
<UnitàInstallazione>:\WF_WCF_Samples
Se questa directory non esiste, vedere la pagina relativa agli esempi di Windows Communication Foundation (WCF) e Windows Workflow Foundation (WF) per .NET Framework 4 per scaricare tutti gli esempi di Windows Communication Foundation (WCF) e WF. Questo esempio si trova nella directory seguente.
<UnitàInstallazione>:\WF_WCF_Samples\WCF\Basic\Services\Hosting\WebRoutingIntegration
|
Per utilizzare questo esempio
In Visual Studio 2010 aprire il file WebRoutingIntegration.sln.
Per eseguire la soluzione e avviare il server Web di sviluppo, premere F5.
Verrà aperta la visualizzazione directory per l'esempio. Si noti che non sono presenti file con l'estensione di file svc.
Nella barra degli indirizzi aggiungere
movies
all'URL, in modo da ottenere https://localhost:[port]/movies, quindi premere INVIO.Il feed movies verrà visualizzato nel browser.
Nella barra degli indirizzi aggiungere
channels
all'URL, in modo da ottenere https://localhost:[port]/channels, quindi premere INVIO.Il feed channels verrà visualizzato nel browser.
Chiudere il browser premendo ALT+F4.
Se il server di sviluppo non viene chiuso, fare clic con il pulsante destro del mouse sull'icona della barra delle applicazioni e scegliere Interrompi.
Per utilizzare questo esempio ospitato in IIS
In Visual Studio 2010 aprire il file WebRoutingIntegration.sln.
Compilare il progetto premendo F6.
Creare un'applicazione Web in Gestione Internet Information Services (IIS).
In Gestione IIS fare clic con il pulsante destro del mouse su Sito Web predefinito e scegliere Aggiungi applicazione.
Per alias digitare
WebRoutingIntegration
.Per Percorso fisico selezionare la cartella Service all'interno del progetto.
Premere OK.
Avviare l'applicazione facendo clic con il pulsante destro del mouse sull'applicazione Web e scegliendo Gestisci applicazione, quindi Sfoglia.
Nella barra degli indirizzi aggiungere
movies
all'URL, in modo da ottenere https://localhost:[port]/movies, quindi premere INVIO.Il feed movies verrà visualizzato nel browser.
Nella barra degli indirizzi aggiungere
channels
all'URL, in modo da ottenere https://localhost:[port]/channels, quindi premere INVIO.Il feed channels verrà visualizzato nel browser.
Chiudere il browser premendo ALT+F4.
In questo esempio illustrato come il livello di hosting sia in grado di interagire con le classi nello spazio dei nomi System.Web.Routing per l'indirizzamento delle richieste dei servizi ospitati su HTTP.
Nota: |
---|
Se è impostata sulla versione 2, aggiornare la versione del pool di applicazioni predefinito a .NET Framework versione 4. |