2015-05-15 53 views
0

任何人都可以告訴我,如何在MVC 5中使用Elmah ..當發生錯誤時,它必須重定向到某個默認頁面,如服務錯誤,未找到Http。ELMAH:錯誤記錄模塊和處理程序

public ActionResult About() 
{ 
    ViewBag.Message = "Your app description page."; 
    try 
    { 
     int message = Convert.ToInt32("Hello"); 
    } 
    catch (Exception exp) 
    { 
     Elmah.ErrorSignal.FromCurrentContext().Raise(exp); 
     // throw; 
    } 

    return View(); 
} 

我怎麼會重定向到錯誤頁面

+0

@Bijan你能看到我做了什麼...我如何重定向到特定頁面。當我得到一個異常 – karthik

+0

Elmah是_logging_不要將錯誤交給錯誤頁面。查看'HandleErrorAttribute'或者在你的'Global.asax.cs'的'Application_Error'方法中放置一些東西。 –

回答

0

正如已經評論,ELMAH基本上是用來記錄錯誤。重定向到錯誤頁面不是Elmah的責任。要查看記錄的錯誤,在

http://yourDomain.com/elmah.axd

打ELMAH處理現在,如果你想要做的重定向例外,你可以做

  1. 添加<的customErrors模式=」 On「defaultRedirect =」YourErrorPage.htm「> in web.config
  2. 重定向Global.asax的Application_Error
  3. 在自定義HandleErrorAttribute中重定向(理想情況下,日誌記錄後)

但是,所有這些都適用於未處理的異常。你的是一個處理過的異常(因爲throw被評論)。在這種情況下,你必須直接從catch塊重定向,就像return Redirect("/YourErrorPage.htm");

+0

謝謝你明白了:) – karthik