2

背景

我在我的 MVC Web 应用程序中设置了[HandleError]用于异常处理,但后来它无法处理一些异常,所以我被建议继续使用替代Application_Error我的 SO Post)我也最终使用了ELMAH,这似乎更好。

好吧,ELMAH 摇滚!但我无法找到如何显示格式化异常(就像我对 Application_Error 所做的那样)

ELMAH v/s Application_Error

ELMAH - 提供(几乎)开箱即用的异常日志记录和其他功能,如电子邮件。它完全依赖于 web.config 和它需要的一堆文件。能够在 xml / 数据库(如配置)中记录异常,并且能够发送电子邮件、rss 等。提供一个页面,用户可以在其中查看完整的异常日志并深入了解详细信息。

优点:出错时不显示格式化异常。使 web.config 有点笨重。ELMAH 文件集为 2.8mb(超过我的整个 Web 应用程序 zip 大小的两倍)。无法格式化错误/电子邮件。它依赖于 System.Data.SQLite.dll,它依赖于 CPU 架构(x64 或 x86)所以发布

Application_Error - 捕获所有异常,我们能够导航用户以显示格式化错误。我们控制显示和通过电子邮件发送的内容。完全托管的代码(不依赖 CPU)没有额外的 web.config 设置。没有额外的dll。

优点:没有隐式异常日志记录(我们需要编码)。没有像 ELMAH 这样的日志查看器。电子邮件、日志记录 - 我们必须管理所有内容。

结论:首先,请告诉我 ELMAH 是否可以“完全”替换我的 Application_Error。此外,我没有找到太多关于如何配置使用 ELMAH 显示/通过电子邮件发送的错误消息。还是它们必须共存 (Application_Error 显示格式化错误,ELMAH 显示几乎所有其他内容)

请提出建议并分享您的经验。

4

1 回答 1

0

我可以使用 ELMAH(除了向用户显示格式化的异常详细信息 - 或者至少我没有找到任何相关信息)

我想知道我的帖子中缺少什么来吸引 SO 观众。Atif 本人回答了我的主题 - 更快,更简单!

https://groups.google.com/forum/?fromgroups=#!topic/elmah/Md9DslGgwNo

于 2012-09-19T15:21:28.007 回答