Compartilhar via


Erro ao usar Server.Transfer ou Server.Execute em ASP.NET páginas: Executando solicitação filho

Este artigo ajuda a resolver o problema de que ocorre um erro (execução de solicitação filho) quando você transfere o controle de uma página ASP.NET para uma página ASP (Active Server Pages) no IIS (Serviços de Informações da Internet).

Versão original do produto: ASP.NET
Número original do KB: 320439

Sintomas

Ao tentar usar o Server.Transfer método ou o Server.Execute método em sua página ASP.NET para transferir o controle de uma página ASP.NET para uma página ASP, você pode receber a seguinte mensagem de erro:

Erro ao executar a solicitação secundária para PageName.asp.

O PageName.asp na mensagem de erro é o nome da sua página ASP.

Causa

O IIS despacha a Server.Transfer ou a Server.Execute solicitação para a extensão ISAPI (Internet Server Application Programming Interface) apropriada com base na extensão do arquivo solicitante. Por exemplo, uma solicitação para uma página .aspx é enviada para a extensão ISAPI Aspnet_isapi.dll .

Depois que a solicitação é enviada para a extensão ISAPI apropriada, a extensão ISAPI não pode chamar outra extensão ISAPI. Você recebe a mensagem de erro listada na seção Sintomas porque o arquivo Aspnet_isapi.dll, que manipula solicitações para páginas ASP.NET, não pode encaminhar a solicitação para o arquivo Asp.dll, que manipula solicitações para páginas ASP.

Solução

Para resolver esse problema, use o Response.Redirect método para redirecionar a solicitação de uma página ASP.NET para uma página ASP.

Status

Este comportamento ocorre por design.