MVC的Action上下文:ActionExecutingContext


就上图来看,大家注意了吗,ActionExecutingContext对象一共有3处引用。下面我来一一解析:

调用base.OnActionExecuting(filterContext)这个后,才会执行后续的ActionFilter,如果你确定只有一个,或是不想执行后续的话,那么可以不用调用该语句

filterContext.ActionDescriptor.ActionName通过上下文获得了执行的Action名称

filterContext.Result是执行上下文Action后返回的自定义结果。

然后我们再来看看这个ActionExecutingContext类,请看下图

这里更明确的说明了ActionExecutingContext类能帮你做什么。当然我要说说,这个类一般是用于自定义过滤器进行过滤,对于控制器来说它本身继承了ActionFilterAttribute基类,因此可以重写OnActionExecuting以下说明了该类相关方法

方法

参数

描述

OnActionExecuting

ActionExecutingContext

在行为方法执行前执行

OnActionExecuted

ActionExecutedContext

在行为方法执行后执行

OnResultExecuting

ResultExecutingContext

在行为方法返回前执行

OnResultExecuted

ResultExecutedContext

在行为方法返回后执行

 

四个方法执行顺序是OnActionExecuting——>OnActionExecuted——>OnResultExecuting——>OnResultExecuted

现在,我们再回到上图,看看这个

这段什么意思呢,CurrentModule是特性标识,特性名AuthenticateAttribute;想必大家明白权限过滤咋回事了吧

我们再看看这个,是不是限制了登录了呀,呵呵

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM