2010-03-05 71 views

回答

5

如果讓異常傳播完成了對ELMAH Web模塊會自動記錄這些例外。

但是,您可以通過程序直接登錄到ELMAH,有幾個方法可以做到這一點:

可以在代碼中使用這樣的代碼你的catch子句中:

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

的另一種方式這樣做是這樣的:

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

我不過包裝這個代碼放到一個更通用的IErrorLogger風格的界面,使您的較低級代碼並不需要有一個硬依賴使用Elmah本身

+0

謝謝,Saret!這對我有用。 – cksanjose 2010-03-05 21:20:19

+0

沒有概率,我的榮幸 – saret 2010-03-08 08:15:40

+0

上述兩種方法之間有什麼區別? – ProfK 2011-04-27 13:44:37