ASP.NET MVC异常处理

19

在控制器的操作中捕获我的异常是可以的吗?是否有更好的方法?实际上,我正在控制器中捕获我的异常并使用TempData向用户显示消息,但我对这种方法感到奇怪。我一直在浏览,但没有找到适合我的内容。


这篇文章有些旧,但我只是想提供我的帖子作为参考(关于HandleError的问题),顺便路过 - http://stackoverflow.com/questions/12183653/mvc-handleerror-filter-didnt-catch-an-exception - Hemant Tank
1个回答

11

这很有趣,但是另一种方法是我可以重定向到标准视图(例如“Index”),并为具体的异常显示个性化消息... - Carles Company
Error.aspx页面与HandleErrorInfo类相关联,该类公开了异常的属性。如果您正在发送个性化的异常消息,则可以将其呈现到视图中。Steve Sanderson的书《Pro ASP.NET MVC Framework》介绍了一些方法来实现这一点,以及如何创建自己的异常过滤器。我建议您阅读这本书。 - mkchandler
也许可以扩展HandleError以允许定义TempData?我想我会调查一下。谢谢... - Carles Company
还是不确定这是否是正确的方法... :P - Carles Company
1
在我看来,你似乎需要实现自己的异常过滤器。但在这之前,我建议退后一步,确保你没有过度复杂化可以使用内置的HandleErrorAttribute异常过滤器完成的事情。 - mkchandler

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接