2015-05-15 44 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