加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – MVC中的错误处理

发布时间:2020-12-16 07:03:04 所属栏目:asp.Net 来源:网络整理
导读:我在MVC中使用错误处理已经困难了几天.我仍然没有做对. (我也在这里阅读了大部分问题并用Google搜索,直到我的手指流血) 我想做的事: 使用标准[授权]属性 将所有错误重定向到我的错误控制器(包括未经授权的) 我的错误控制器中每个HTTP错误都有一个操作. 我不
我在MVC中使用错误处理已经困难了几天.我仍然没有做对. (我也在这里阅读了大部分问题并用Google搜索,直到我的手指流血)

我想做的事:

>使用标准[授权]属性
>将所有错误重定向到我的错误控制器(包括未经授权的)
>我的错误控制器中每个HTTP错误都有一个操作.

我不想做的事:

>将[ErrorHandler]放在我的所有控制器上(它可以在我的基础控制器上使用)吗?
>使用自定义Authorize属性.

实际上,只要我让#1-3工作,我就可以做任何必要的事情(包括NOT列表).

我尝试过的:

>使用Application_Error
>使用Controller.HandleUnknownAction
>使用Controller.OnException
>在我的控制器上使用[ErrorHandler]
>在web.config中打开/关闭CustomErrors

猜猜我需要这些或其他东西的组合?

解决方法

您可以使用自定义过滤器,只需扩展ErrorHandlerAttribute并使其了解您的错误控制器.然后将其添加为Application_Start中的全局过滤器:

GlobalFilters.Filters.Add(new CustomAErrorHandlerAttribute());

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读