Skip Navigation Links
Novas Tecnologias
Ferramentas Adicionais
Ferramentas Adicionais


Dica No :
1009
Assunto : ASP.NET
Titulo: Tratando o page_error com master pages

Gostou do texto ? Vote e dê sua opinião! Pontuação atual :

Translate this page now :






Adicione aos Favoritos!
BlogBlogs Rec6 Linkk Ueba Technorati Delicious DiggIt! StumbleUpon



O evento Page_error é sem dúvida uma boa forma de tratar erros inesperados. Enquanto desejaremos dar um tratamento comum a todo erro inesperado, utilizar o application_error do global.asax é por demais custoso.

No Visual Studio 2003 criávamos uma classe base e faziamos todas as páginas do site herdarem desta classe base. No Visual Studio 2005, porém, surgiram as master pages. Parecia a solução definitiva para algumas centralizações - tal como o tratamento de erro centralizado.

Mas infelizmente não foi bem assim. O page_error quando programado na master page simplesmente não é executado e o programador fica chupando dedo sem saber o que está acontecendo.

Qual o segredo ?

Simples : O page_error trata o erro da página em que ele está, no caso a master page. Se algum erro ocorrer dentro da execução da master page o page_error tratará isso sem problema algum.

Porém se algum erro ocorrer na content page o page_Error da master page não é considerado - não estão na mesma página.

A consequencia disso seria terrível, nos obrigaria a repetir o tratamento de erros em todas as págins. Então, como resolver ?

A solução para isso é simples : No load da master page podemos vincular o tratador qe já existe nas master page com o evento page_error da content page

Veja como fica :

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
AddHandler Page.Error, AddressOf Page_Error
End Sub

Com isso o tratamento de erro será o mesmo para todas as páginas e não teremos o peso típico que o application error do global.asax nos causaria.


Nome :
E-mail:
Comentarios :
 
 
Os Últimos Comentários
data: 5/20/2017 11:51:00 AM
nome: QIqJLHtdCaWlwp
email: jimos45812rt1@hotmail.com
comentário:
B4ac1j http://www.LnAJ7K8QSpkiStk3sLL0hQP6MO2wQ8gO.com

data: 2/1/2017 2:39:00 AM
nome: WDpotQHJisTjSshAwv
email: derby451@hotmail.com
comentário:
l9xujj http://www.y7YwKx7Pm6OnyJvolbcwrWdoEnRF29pb.com

data: 1/31/2017 11:04:00 AM
nome: AEXqCNqEWaaIPd
email: derby451@hotmail.com
comentário:
GaDzHB http://www.y7YwKx7Pm6OnyJvolbcwrWdoEnRF29pb.com

data: 1/30/2017 1:47:00 AM
nome: mNIUeKWbUF
email: derby451@hotmail.com
comentário:
vqQoQV http://www.y7YwKx7Pm6OnyJvolbcwrWdoEnRF29pb.com

data: 1/30/2017 12:31:00 AM
nome: nvmVRbYkghFmRD
email: jogcbfn@hotmail.com
comentário:
qacNr3 http://www.y7YwKx7Pm6OnyJvolbcwrWdoEnRF29pb.com

 1  
Dicas
Dica do Dia
Receba Dicas Por Email
E-mail :  
 


 (help)
Aceito receber informativos do devASPNet, informações de eventos e treinamentos

Veja Quais Informativos Você Receberá

Pesquisar Dicas
Pesquisar Artigos, Dicas e Noticias

Banco de Dados
Algumas Entrevistas
Links Importantes

Búfalo Informática, Treinamento e Consultoria
R. Alvaro Alvim, 37/920 Centro - Cinelândia - Rio de Janeiro Cep: 20031-010
Tel : (21) 2262-1368 (21) 9240-5134 E-mail : Contato@bufaloinfo.com.br