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

处理asp.net MVC控制器构造函数中发生的异常

发布时间:2020-12-16 06:43:05 所属栏目:asp.Net 来源:网络整理
导读:处理控制器构造函数中发生异常的最佳方法是什么? 我能想到的就是使用Application_OnError()或在我的ControllerFactory中放一个try / catch. 这些解决方案似乎都不理想. Application_OnError是广泛的 – 我在网站中有一些非mvc内容,它有自己的错误处理. 使用
处理控制器构造函数中发生异常的最佳方法是什么?

我能想到的就是使用Application_OnError()或在我的ControllerFactory中放一个try / catch.

这些解决方案似乎都不理想. Application_OnError是广泛的 – 我在网站中有一些非mvc内容,它有自己的错误处理.

使用try / catch块似乎有点hacky.

如果我正在提供不同的内容类型-html / text / json / rss ….我希望能够在action方法中处理异常,而不必编写各种条件来确定哪种错误要发球的消息.

我在这里遗漏了什么,还是有其他人处理过这个问题?

解决方法

如果在首先创建控制器时ControllerFactory中发生异常,则无法在操作方法中处理异常.

我个人只是做一个try / catch,实例化一些错误处理控制器,并通过它来路由请求.

一个更好的问题是 – 你的控制器如此依赖于什么不被满足,他们必须在构建时抛出异常?表面上看,简单地创建控制器不应该是异常的巨大来源.如果是这样,也许你可以看一下懒惰地在动作方法(而不是构造函数)中实例化依赖项,并实现ErrorHandlingController approach.这会将异常“向下”推入控制器本身,这样你就可以采取更多的控制器 – 处理它们的中心方法.

(编辑:李大同)

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

    推荐文章
      热点阅读