ActionFilterAttribute
ActionFilterAttribute 用于Action验证
ActionFilterAttribute是Action过滤类,该属于会在执行一个action之前先执行.而ActionFilterAttribute是
VC的一个专门处理action过滤的类.基于这个原理,
假设某个action:AdminIndex,我们给该Action的最起码访问要求是用户必须是登陆状态.那么,我们要做的工作就是在
[CheckLogin()]//在该Action上面加一个判断
public ActionResult AdminIndex()
{
return View();
} // end AdminIndex
上面说了,ActionFilterAttribute是过滤基类,所以CheckLogin()判断要继承ActionFilterAttribute如下:
public class CheckLoginAttribute : ActionFilterAttribute
{
public CheckLoginAttribute()
{}
} // end class CheckLoginAttribute
在ActionFilterAttribute基类中有个抽象方当
public abstract void OnActionExecuting(ActionExecutingContext filterContext);
顾名思义就是指当要执行一个Action之前要做啥工作.在CheckLoginAttribute继承主类后,要将该OnActionExecuting(..)方法重写如:
public override void OnActionExecuting(ActionExecutingContext filterContext)
{} // end Action
这样的话,我们就可以将我们想做的处理写在该方法里头.如:
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
// 如果用户没有登陆
if(!UserLogin.IsLogined)
{
// 处理方法
ErrorRedirect(filterContext);
return;
}// end if
}
// 错误处理方法
private void ErrorRedirect(ActionExecutingContext filterContext)
{
filterContext.Result = new RedirectToRouteResult("Default", new RouteValueDictionary(new { controller = "Home", action = "Default" }));
} // end ErrorRedirect
当执行ErrorRedirect方法时,它会自己选择指定的Route并跳转到非AdminIndex的Action中.
转载于:https://blog.51cto.com/8288136/1696092
ActionFilterAttribute相关推荐
- 利用反射及ActionFilterAttribute实现MVC权限管理
1.利用反射获取当前程序集下的所有控制器和方法,拼接后写入到数据库. public void GetRightInfo(){var ControllerIDMax = db.rights_info.S ...
- .NET WebAPI 用ActionFilterAttribute实现token令牌验证与对Action的权限控制
项目背景是一个社区类的APP(求轻吐...),博主主要负责后台业务及接口.以前没玩过webAPI,但是领导要求必须用这个(具体原因鬼知道),只好硬着头皮上了. 最近刚做完权限这一块,分享出来给大家.欢 ...
- MVC之ActionFilterAttribute自定义属性
ActionFilterAttribute里有OnActionExecuting方法,跟Controller一样, 同是抽象实现了IActionFilter接口. // 登录认证特性 public c ...
- 巧用ActionFilterAttribute实现API日志的记录
背景 上回提到开发web api的时候,一般是需要记录api的输入输出信息,方便后续排查问题:使用的是委托的形式进行记录日志. 使用Func<T, TResult> 委托实现API日志的记 ...
- ASP.NET Core如何在ActionFilterAttribute里做依赖注入
点击蓝字 关注我 在ASP.NET Core里,我们可以使用构造函数注入很方便地对Controller,ViewComponent等部件做依赖注入.但是如何给过滤器ActionFilterAttrib ...
- MVC中利用ActionFilterAttribute过滤关键字
在开发过程中,有时候会对用户输入进行过滤,以便保证平台的安全性.屏蔽的方法有很多种,但是今天我说的这种主要是利用MVC中的ActionFilterAttribute属性来实现.由于MVC天然支持AOP ...
- Web API Filter ActionFilterAttribute 使用
WebApi 提供两种过滤器的类型: 1.ActionFilterAttribute 2.exceptionFilterAttribute 两个类都是抽象类,ActionFilter 主要实现执行请求 ...
- Microsoft MVC Preview 2 ActionFilterAttribute实际开发中的应用
这个功能大大节约了我们开发中的编码数量.它的定义我也不多说了,我只是把我自己已经用到的代码给大家共享一下 ActionFilterAttribute的定义: 或是写成这样 下面那种名称的定义在很用的时 ...
- MVC之 自定义过滤器(ActionFilterAttribute)
一.自定义Filter 自定义Filter需要继承ActionFilterAttribute抽象类,重写其中需要的方法,来看下ActionFilterAttribute类的方法签名. //表示所有操作 ...
- MVC 过滤器使用 ActionFilterAttribute
在asp.net mvc 中 webapi 和 mvc 处理消息是两个不同的管道,Asp.net mvc 和 webapi 为我们提供的 ActionFilterAttribute 拦截器,通过 重写 ...
最新文章
- pku The Windy's KM最小权匹配 or 最小费用最大流
- 计算机组成原理怎么考察的,计算机组成原理课程考察报告(论文).doc
- (23)逆向分析 MmIsAddressValid 函数(XP系统 10-10-12分页)
- 针对表单的事件;条件语句;定时器的简单介绍;
- 项目经理在项目各阶段的工作重点
- 因为喜欢,所以选择它
- python安装缺少api怎么办_请问缺少win32api模块该如何解决?
- scrollbarStyle属性
- Spring Boot(一) 建立spring boot工程
- Windows10使用Anaconda安装TensorFlow-GPU
- 工具的使用 —— 搜狗输入法(二)
- eureka 注册中心高可用失败,没有互为副本
- Qtp10安装过程遇到的问题
- 怎样做计算机系统的镜像文件,Windows7 镜像制作过程 图文说明
- mysql实现火车购票系统_火车票购票系统的设计与实现(MyEclipse,MySQL)
- 对XSCJ数据库进行数据查询 -- 学生成绩管理系统
- 制作业信息化为什么难施行?
- 通过手机实现外网远程唤醒内网下的群辉Nas等设备
- 全球与中国线锯钢线市场深度研究分析报告
- Guitar Pro 的木吉他音色改成电吉他音色的方法