Fehler bei Verwendung von "Server.Transfer" oder "Server.Execute" auf ASP.NET Seiten: Ausführen einer untergeordneten Anforderung

Dieser Artikel hilft Ihnen, das Problem zu beheben, dass ein Fehler (Ausführen einer untergeordneten Anforderung) auftritt, wenn Sie die Steuerung von einer ASP.NET Seite zu einer ASP-Seite (Active Server Pages) in Internetinformationsdienste (IIS) übertragen.

Ursprüngliche Produktversion:   ASP.NET
Ursprüngliche KB-Nummer:   320439

Problembeschreibung

Wenn Sie versuchen, Server.Transfer die Methode oder die Methode auf der ASP.NET Seite zu Server.Execute verwenden, um die Steuerung von einer ASP.NET Seite auf eine ASP-Seite zu übertragen, wird möglicherweise die folgende Fehlermeldung angezeigt:

Fehler beim Ausführen einer untergeordneten Anforderung für PageName.asp.

"PageName.asp" in der Fehlermeldung ist der Name der ASP-Seite.

Ursache

IIS verteilt die Server.Transfer Anforderung oder die Anforderung basierend auf der Erweiterung der Server.Execute anfordernden Datei an die entsprechende ISAPI-Erweiterung (Internet Server Application Programming Interface). Beispielsweise wird eine Anforderung für eine ASPX-Seite an die Aspnet_isapi.dll ISAPI-Erweiterung gesendet.

Nachdem die Anforderung an die entsprechende ISAPI-Erweiterung gesendet wurde, kann die ISAPI-Erweiterung keine weitere ISAPI-Erweiterung aufrufen. Sie erhalten die Fehlermeldung, die im Abschnitt "Symptome" aufgeführt ist, da die Aspnet_isapi.dll-Datei, die Anforderungen an ASP.NET Seiten verarbeitet, die Anforderung nicht an die Asp.dll Datei weiterleiten kann, die Anforderungen an ASP-Seiten verarbeitet.

Lösung

Um dieses Problem zu beheben, verwenden Sie die Response.Redirect Methode, um die Anforderung von einer ASP.NET Seite zu einer ASP-Seite umzuleiten.

Status

Es handelt sich hierbei um ein beabsichtigtes Verhalten.