Errore quando si utilizza Server.Transfer o Server.Execute nelle pagine ASP.NET: esecuzione della richiesta figlio

Questo articolo consente di risolvere il problema che si verifica un errore (esecuzione di una richiesta figlio) quando si trasferisce il controllo da una pagina ASP.NET a una pagina ASP (Active Server Pages) in Internet Information Services (IIS).

Versione originale del prodotto: ASP.NET
Numero KB originale: 320439

Sintomi

Quando si tenta di utilizzare il metodo Server.Transfer o Server.Execute nella pagina ASP.NET per trasferire il controllo da una pagina ASP.NET a una pagina ASP, è possibile che venga visualizzato il seguente messaggio di errore:

Errore durante l'esecuzione della richiesta figlio per PageName.asp.

PageName.asp nel messaggio di errore è il nome della pagina ASP.

Causa

IIS invia la richiesta Server.Transfer o Server.Execute all'estensione ISAPI (Internet Server Application Programming Interface) appropriata in base all'estensione del file richiedente. Ad esempio, una richiesta per una pagina .aspx viene inviata all'estensione ISAPI Aspnet_isapi.dll.

Dopo che la richiesta è stata inviata all'estensione ISAPI appropriata, l'estensione ISAPI non può chiamare un'altra estensione ISAPI. Viene visualizzato il messaggio di errore elencato nella sezione Sintomi perché il file Aspnet_isapi.dll, che gestisce le richieste alle pagine ASP.NET, non può inoltrare la richiesta al file Asp.dll, che gestisce le richieste alle pagine ASP.

Risoluzione

Per risolvere questo problema, utilizzare il metodo Response.Redirect per reindirizzare la richiesta da una pagina ASP.NET a una pagina ASP.

Stato

Si tratta di un comportamento legato alla progettazione del prodotto.