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

asp.net-mvc – 在每个请求上执行代码

发布时间:2020-12-16 09:56:57 所属栏目:asp.Net 来源:网络整理
导读:我希望能够在将数据填充到ViewData的每个请求上执行一些代码.目前我有一个所有控制器继承的基本控制器类,我重写OnActionExecuting并在那里执行. 我唯一关心的是这种方法是谁创建了一个新的控制器,必须继承基类. 有没有办法在global.asax中注册一些东西,就像
我希望能够在将数据填充到ViewData的每个请求上执行一些代码.目前我有一个所有控制器继承的基本控制器类,我重写OnActionExecuting并在那里执行.

我唯一关心的是这种方法是谁创建了一个新的控制器,必须继承基类.

有没有办法在global.asax中注册一些东西,就像你使用自定义模型绑定器一样,可以运行每个请求?有点像全球动作过滤器或其他东西.

解决方法

您可以使用 custom action invoker.而不是使用基本控制器类(我认为这是大多数情况下的最佳选择).我将从内置的动作调用程序派生出来并撒上您需要的额外内容.您在应用程序启动期间在global.asax中注册了动作调用者,它可以覆盖OnActionExecuting / OnActionExecuted / OnResultExecuting / OnResultExecuted.例如,您可以使用OnResultExecuting添加一些ViewData.此时,您将知道已完成的操作,并且还知道ActionResult的类型.

(编辑:李大同)

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

    推荐文章
      热点阅读