Domanda

sto usando ELMAH per gestire le eccezioni in mio progetto ASP.Net MVC. Vorrei utilizzare per accedere errori come timeout di connessione al database, query di timeout di connessione e altri. Questo è possibile con ELMAH?

È stato utile?

Soluzione

Se si lascia che si propagano eccezione verso il Web modulo Elmah registrerà automaticamente queste eccezioni.

È possibile tuttavia programatically accedere direttamente al Elmah, ci sono un paio di modi per farlo:

È possibile utilizzare il codice come questo nel tuo clausola catch nel codice:

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

Un altro modo per farlo è questo:

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

Vorrei però concludere questo codice in un più generico un'interfaccia stile IErrorLogger in modo che il codice di livello inferiore non ha bisogno di avere una dipendenza duro Elmah stessa

Altri suggerimenti

Non so se è con ELMAH (mai usata), ma si può fare tutto ciò che con gli SM Ent Libs, che sono altamente configurabile.

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

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

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top