Em qualquer aplicativo, erros ocorrem durante o processo de desenvolvimento. É importante ser capaz de descobrir erros em um estágio inicial.
No Visual Studio, é possível fazer isso para aplicativos ASP.Net. Visual Studio é usado para depuração e tem técnicas de tratamento de erros para ASP.Net.
Neste tutorial, você aprenderá-
- O que é depuração no ASP.NET?
- O que é rastreamento no ASP.NET?
- Rastreamento em nível de página
- Tratamento de erros: exibição de uma página de erro personalizada
- Exceção não tratada ASP.NET
- Log de erros ASP.NET
O que é depuração no ASP.NET?
A depuração é o processo de adicionar pontos de interrupção a um aplicativo. Esses pontos de interrupção são usados para pausar a execução de um programa em execução. Isso permite que o desenvolvedor entenda o que está acontecendo em um programa em um determinado momento.
Vejamos um exemplo de programa. O programa exibe uma string "Estamos depurando" para o usuário. Suponha que quando executamos o aplicativo, por algum motivo, a string não é exibida. Para identificar o problema, precisamos adicionar um ponto de interrupção. Podemos adicionar um ponto de interrupção à linha de código que exibe a string. Este breakpoint irá pausar a execução do programa. Neste ponto, o programador pode ver o que possivelmente está errado. O programador corrige o programa de acordo.
Aqui no exemplo, usaremos nosso 'DemoApplication' que foi criado nos capítulos anteriores. No exemplo a seguir, veremos
- Como fazer o aplicativo demo exibir uma string.
- Como adicionar pontos de interrupção a um aplicativo.
- Como depurar o aplicativo usando este ponto de interrupção.
Etapa 1) Vamos primeiro garantir que nosso aplicativo da web esteja aberto no Visual Studio. Verifique se o DemoApplication está aberto no Visual Studio.
Etapa 2) Agora abra o arquivo Demo.aspx.cs e adicione a linha de código abaixo.
- Estamos apenas adicionando a linha de código Response.Write para exibir uma string.
- Portanto, quando o aplicativo é executado, ele deve exibir a string "Estamos depurando" no navegador da web.
namespace DemoApplication{public partial class Demo : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){Response.Write("We are debugging");}}}
Etapa 3) Agora vamos adicionar um ponto de interrupção. Um ponto de interrupção é um ponto no Visual Studio onde você deseja que a execução do programa pare.
- Para adicionar um ponto de interrupção, você precisa clicar na coluna onde deseja que o ponto de interrupção seja inserido. Portanto, em nosso caso, queremos que nosso programa pare na linha de código "Response.Write". Você não precisa adicionar nenhum comando para adicionar um ponto de interrupção. Você só precisa clicar na linha na qual deseja adicionar um ponto de interrupção.
- Feito isso, você notará que o código fica marcado em vermelho. Além disso, uma bolha vermelha aparece na coluna ao lado da linha de código.
Nota: - Você pode adicionar vários pontos de interrupção em um aplicativo
Etapa 4) Agora você precisa executar seu aplicativo usando o modo de depuração. No Visual Studio, escolha a opção de menu Depurar-> Iniciar Depuração.
Resultado:-
Quando você executa todas as etapas corretamente, a execução do programa será interrompida. O Visual Studio irá para o ponto de interrupção e marcará a linha de código em amarelo.
Agora, se o programador sentir que o código está incorreto, a execução pode ser interrompida. O código pode então ser modificado de acordo. Para continuar com o programa, o programador precisa clicar no botão F5 no teclado.
O que é rastreamento no ASP.NET?
O rastreamento do aplicativo permite ver se alguma página solicitada resulta em erro. Quando o rastreamento está ativado, uma página extra chamada trace.axd é adicionada ao aplicativo. (Veja a imagem abaixo). Esta página está anexada ao aplicativo. Esta página mostrará todas as solicitações e seu status.
Vejamos como habilitar o rastreio para um aplicativo.
Etapa 1) Vamos trabalhar em nosso 'DemoApplication'. Abra o arquivo web.config no Solution Explorer.
Etapa 2) Adicione a linha de código abaixo ao arquivo Web.config.
A instrução trace é usada para habilitar o rastreamento do aplicativo.
- O 'requestLimit' na instrução trace é usado. Ele especifica o número de solicitações de página que devem ser rastreadas.
- Em nosso exemplo, estamos fornecendo um limite de 40. Fornecemos limite porque um valor mais alto degradará o desempenho do aplicativo.
Execute o "demoapplication" no Visual Studio.
Resultado:-
Se você navegar até a URL - http: // localhost: 53003 / trace.axd , verá as informações de cada solicitação. Aqui você pode ver se algum erro ocorre em um aplicativo. Os seguintes tipos de informação são mostrados na página acima
- A hora da solicitação da página da web.
- O nome da página da web que está sendo solicitada.
- O código de status da solicitação da web. (o código de status 200 significa que a solicitação foi bem-sucedida).
- Os detalhes de exibição que você permite ver mais detalhes sobre a solicitação da web. Um exemplo disso é mostrado abaixo. Uma informação detalhada importante fornecida é a informação do cabeçalho. Essas informações mostram quais são as informações enviadas no cabeçalho de cada solicitação da web.
Rastreamento em nível de página
O rastreamento de página mostra todas as informações gerais sobre uma página da web quando ela está sendo processada. Isso é útil na depuração se uma página não funcionar por algum motivo.
O Visual Studio fornecerá informações detalhadas sobre vários aspectos da página. Informações como a hora de cada método chamado na solicitação da web. Por exemplo, se seu aplicativo da web está tendo um problema de desempenho, essas informações podem ajudar a depurar o problema. Essas informações são exibidas quando o aplicativo é executado no Visual Studio.
Vejamos como habilitar o rastreio de um aplicativo no nível da página.
Etapa 1) Vamos trabalhar em nosso DemoApplication. Abra o arquivo demo.aspx no Solution Explorer
Etapa 2) Adicione a linha de código abaixo para habilitar o rastreamento de página. Na declaração da página, basta acrescentar a linha Trace = "true". Esta linha de código permitirá o rastreamento no nível da página.
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Demo.aspx.cs" Inherits="DemoApplication.Demo" %>