MVC中的Action过滤器

Action过滤器可以用在调用动作方法之前或之后,执行一些特殊的逻辑,比如用登录验证:

Action过滤器实现IActionFilter接口,该接口有两个方法:

public interface IActionFilter
   {
       void OnActionExecuted(ActionExecutedContext filterContext);
       void OnActionExecuting(ActionExecutingContext filterContext);
   }

 我们先创建一个BaseController,在这个基类中重写OnActionExecuting方法,用于让其他的控制器继承此基类。如:

 注意,当验证不通过时,我们给filterContext.Result赋值,用于跳转页面。这个filterContext.Result属性是一个ActionResult类型的子集---RedirectResult:

当执行到filterContext.Result时,我们给它赋值以后,便会执行跳转。

这个BaseController建好以后,下面的工作就是在其他控制器中使用了:

 

参考:http://skybirdzw.blog.163.com/blog/static/72570626201781465310313/

posted @   skybirdzw  阅读(214)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示