VS2008 Debugger Unattached

1

Não tenho ideia do motivo, mas o depurador de um projeto específico parou espontaneamente de funcionar. Eu falo espontaneamente porque funcionou um dia, fui para casa no fim de semana, voltei e, de repente, não funcionou.

Quando eu construo a solução, o servidor web local é iniciado e o site é carregado em um navegador como deveria. No entanto, o depurador não está mais em execução - eu tenho que manualmente "Anexar ao processo" com o servidor de desenvolvimento, se eu quiser testar pontos de interrupção ou passo através do código.

O mais estranho é que não estou tendo este problema com nenhum outro projeto no meu sistema.

Existe uma configuração que eu poderia ter causado que causou isso? O que posso fazer para corrigir o problema para que eu possa pular a etapa do manual "Anexar ao processo" toda vez que eu criar?

    
por EAMann 06.08.2010 / 17:30

2 respostas

0

Ainda não consegui determinar o que causou o problema original, mas há uma correção de curto prazo disponível para qualquer pessoa que esteja enfrentando esse problema.

Depois de criar seu projeto (selecionando Bulid » Criar solução ou apenas clicando em Iniciar depuração ), você pode anexar o depurador ao seu instância do ASP.NET Development Server.

Vá para Depurar » Anexar ao Process e role para baixo até ver o processo WebDev.WebServer.EXE . Ele será rotulado: ASP.NET Development Server - Porta XXXX . Geralmente é o último ou muito próximo do último item da lista.

Selecione este processo e clique em Anexar . Você terá todas as ferramentas de depuração habituais disponíveis e poderá percorrer o código depois de lançar exceções ou atingir pontos de interrupção.

Esta não é uma solução permanente! Você terá que voltar pelo mesmo processo toda vez que construir ou reconstruir seu projeto. Uma dor, sim, mas ainda assim uma solução útil.

Atualização - 10/5/10

Recebi um email ontem de alguém que sofria do mesmo problema. Determinamos que era um problema em web.config que parece ter sido adicionado por VS. Em ambos os casos, partes significativas do arquivo web.config foram colocadas em um bloco <location> com a propriedade inheritInChildApplications definida como "false".

Aparentemente, esta é uma configuração usada no .NET 4, mas que é ilegal no .NET 3.5 ... já que o VS 2008 não pode construir para o .NET 4, como essas linhas foram adicionadas é um mistério .

A remoção das tags <location path="." inheritInChildApplications="false"> e </location> resultou em um arquivo web.config em funcionamento, uma compilação completa do website e um depurador anexado . Finalmente, uma solução completa e permanente!

    
por 08.09.2010 / 17:05
1

Este artigo pode explicar por que: Não é possível depurar o site com localização de nível superior

Um erro no web.config pode fazer com que o depurador seja anexado e, em seguida, seja eliminado imediatamente, sem qualquer tipo de aviso ou erro. Você deve verificar cuidadosamente o web.config, pois o erro pode não ser o mesmo do artigo.

    
por 06.08.2010 / 17:47