0

我即将结束我的应用程序开发。

一切正常,但如果有人遇到意外异常,我希望能够:

  1. 将他重定向到一个用户友好的页面,说明我们遇到了问题。(指定控制器/动作)
  2. 记录堆栈跟踪、当前控制器/动作、参数、会话数据等的所有信息

使用 asp.net MVC 的最佳方法是什么?

编辑

作为出色答案的补充:我像这里描述的那样集成了 elmah:http: //joel.net/logging-errors-with-elmah-in-asp.net-mvc-3--part-1--setup 然后我指定了一些自定义错误页面。所以现在我已经拥有了我需要的一切!

4

4 回答 4

2

使用动作过滤器。

http://blogs.msdn.com/b/gduthie/archive/2011/03/17/get-to-know-action-filters-in-asp-net-mvc-3-using-handleerror.aspx

于 2012-09-04T11:13:30.113 回答
2

我建议您使用“Elmah” http://code.google.com/p/elmah/

这个包是天赐之物 - 与包装盒上显示的完全一样,对您的源代码的更改几乎为零。

它也可以通过 NuGet 在http://nuget.org/packages/elmah获得

于 2012-09-04T11:15:35.380 回答
1

您可以在 global.asax 中捕获错误。有一种方法protected void Application_Error(object sender, EventArgs e)可以让您随心所欲。

于 2012-09-04T11:30:48.700 回答
0

看看PostSharp,简洁易用。免费注册后即可使用入门版。NuGet 包也可用http://nuget.org/packages/PostSharp

于 2012-09-04T11:47:27.877 回答