2008-12-26 8 views
0

J'ai fait des recherches sur la façon de gérer globalement les erreurs dans mon application ASP.NET. Je me suis installé sur l'utilisation du fichier web.config avec le code suivant:Gestion des erreurs ASP.NET Question

<customErrors mode="On" defaultRedirect="errorpage.aspx"> 
</customErrors> 

Voici mon code errorpage.aspx.vb:

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 
    Dim ex As Exception = Server.GetLastError 
End Sub 

Le problème que je vis est Server.GetLastError finit par être rien . Que dois-je faire pour être en mesure d'accéder à la dernière info d'erreur? Comme il est sur une page de formulaire asp, je ne devrais pas avoir à ajouter HttpContext.Current. au Server.GetLastError, correct?

Merci

Répondre

3

Vous pouvez capturer des erreurs globales using the global.asax.

La page d'erreur est chargée via une simple redirection http et ne sait malheureusement pas quelle était la dernière erreur pour un utilisateur particulier. Essayez d'utiliser ELMAH pour capturer vos erreurs.

1

Il est très personnalisable et fera le traitement en arrière-plan sans le signaler à vos utilisateurs. Il peut envoyer les erreurs et les envoyer par e-mail et/ou les enregistrer dans une base de données. Je l'utilise sur toutes mes applications.

http://code.google.com/p/elmah/

Questions connexes