【发布时间】:2013-08-13 21:15:48
【问题描述】:
我看过很多帖子和文章,但无法清晰地看到解决方案。
我已经通过 NuGet 安装了 Elmah.MVC,并在 FilterConfig.cs 中注释掉了这一行:
//filters.Add(new HandleErrorAttribute());
这样 Elmah 会发现错误。
当我提供无效的操作名称并且收到黄页和电子邮件时,它会起作用。
我想知道我的代码可能产生的另外两种类型的错误......我们应该如何处理它们:
1.例如如果我的存储库或管理器(业务逻辑)层在尝试访问数据库或发送电子邮件等时抛出异常。
一个。在控制器(或其他任何地方)中不实现任何类型的 try catch 并让 Elmah 处理异常的正确方法是什么?
b.如果是这样,并且如果它显示一个黄色的错误页面,我们如何显示我们自己喜欢的视图?
2.如果我的视图包含 ajax 调用,例如通过jqgrid,在幕后有错误,我注意到它们也被Elmah正确拾取。但是我如何也向用户显示某种错误消息呢?
谢谢
【问题讨论】:
-
我在这里找到了部分答案:stackoverflow.com/questions/16479396/…
-
越来越近:我在控制器中放置了一个 try catch 块。在 catch 中,我写了 2 行: 1. Elmah.ErrorSignal.FromCurrentContext().Raise(ex) 2. return View("../Error/ShowException", ex)...... 现在我需要解决点 #2 并找到如何自定义 404 错误页面
标签: asp.net-mvc-4 elmah