在 ASP.NET MVC 中,为什么我不在基本控制器上附加 HandleError 并完成它呢?

发布于 2024-09-01 19:57:22 字数 179 浏览 9 评论 0原文

由于 HandleError 是由派生控制器继承的,为什么我不创建(或拥有)一个基本控制器,并在其上应用 HandleError ,以便从基本控制器继承的任何控制器也将自动处理?

然后我会在控制器和单个操作上重写 HandleError。

谁能想到我不想将 HandleError 应用于基本控制器的任何原因吗?

Since HandleError is inherited by the derived Controllers, why wouldn't I just create (or have) a base controller, and apply HandleError on it so that any controllers that inherits from the base controller will automatically be handled as well?

And then I would tack on overriding HandleError on controllers and individual actions.

Can anyone think of any reason why I wouldn't want to apply HandleError to the base controller?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

放我走吧 2024-09-08 19:57:22

我知道这个问题已经很老了,但如果您现在使用 MVC 3,我建议您改用全局过滤器。请参阅 Scott Guthrie 的帖子 此处

I know this question is old, but if you're now using MVC 3 I'd suggest using a global filter instead. See the Global Filters section of Scott Guthrie's post here

木格 2024-09-08 19:57:22

对我来说,基本控制器上的 HandleError 就像用 try{} catch{} 块包围整个应用程序。您基本上已经停止处理异常,就像异常使它们在您的应用程序中正常发生一样。

你只能“捕捉”你知道可能发生的事情,而不是所有可能发生的事情。

To me HandleError on a base controller is like surrounding your entire application with a try{} catch{} block. You've essentially stopped treating exceptions like exceptions made them a normal occurrence in your application.

You could only "catch" what you know may happen and not everything that may happen.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文