Question

J'utilise ELMAH pour gérer les exceptions dans mon projet ASP.Net MVC. Je voudrais l'utiliser pour enregistrer les erreurs comme délai de connexion de base de données, le délai de connexion de requête et d'autres. Est-ce possible avec ELMAH?

Était-ce utile?

La solution

Si vous laissez l'exception sur propager au module Web Elmah il se connectera automatiquement ces exceptions.

Vous pouvez cependant ouvrir une session directement à programatically Elmah, il y a deux façons de le faire:

Vous pouvez utiliser le code comme ceci dans votre clause catch dans le code:

try{....}
catch(Exception ex) { Elmah.ErrorSignal.FromCurrentContext().Raise(ex); }

Une autre façon de le faire est la suivante:

Elmah.ErrorLog.GetDefault(HttpContext.Current).Log(new Elmah.Error(ex));

Je voudrais cependant envelopper ce code dans une interface de style IErrorLogger plus générique afin que votre code de niveau inférieur n'a pas besoin d'avoir une dépendance dur sur lui-même Elmah

Autres conseils

Je ne sais pas si elle est avec ELMAH (jamais utilisé), mais vous pouvez faire tout ce que les MS Ent Libs, qui sont hautement configurables.

http://msdn.microsoft.com/en-us/library /cc467894.aspx

http://entlib.codeplex.com/wikipage?title=EntLib5%20Beta1

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top