博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MVC4过滤器
阅读量:4339 次
发布时间:2019-06-07

本文共 1227 字,大约阅读时间需要 4 分钟。

MVC4提供的四种基本类型过滤器接口,IAuthorizationFilter、IActionFilter、IResultFilter和IExceptionFilter,可通过继承对应的接口和FilterAttrbute特性,定义自己的过滤器,也可继承内置的过滤器,重写相应的方法,完成自己的需求。

授权:IAuthorizeFilter  授权过滤器接口,对身份进行验证

活动:IActionFilter     行为过滤器接口, 执行Action方法前后执行逻辑

结果:IResultFilter    结果过滤器接口,提供了在返回结果前后执行方法

异常:IExceptionFilter  异常过滤器接口,可对其设定在出现异常后的处理方式和方法。

一.授权过滤器:

AuthorizeAttribute:授权过滤器特性,继承 FilterAttribute, IAuthorizationFilter

若是要自定义授权特性,可以继承于AuthorizeAttribute,然后重写(自定义授权)和(授权失败执行逻辑)的方法。也可以直接继承于FilterAttribute和IAuthorizationFilter,重写OnAuthorization方法。

二:方法/行为结果过滤器:

自定义方法行为过滤器,只需要继承于ActionFilterAttribute即可,也可根据自己所需,是否继承IActionFilter和IResultFilter,再继承于FilterAttribute,自定义过滤器。

ActionFilterAttribute 继承了IActionFilter,IResultFilter接口,实现了接口方法。

 

OnActionExecuting:执行Action前执行

OnActionExecuted:执行Action后执行

OnResultExecuting:返回结果前执行方法

OnResultExecuted:返回结果后执行方法

 

三:异常过滤器

自定义异常过滤器,只需要继承于内置HandleErrorAttribute接口即可。也可自定义异常过滤器,继承于FilterAttribute 和IExceptionFilter.

OnException方法:在抛出异常时执行的方法。启用这个异常功能:

使用异常过滤器,需要两个步骤:

   Web.Config 文件配置

   <customErrors  mode="On"></customErrors>

开启自定义错误配置

   使用handleError特性注释动作或控制器类

   [HandleError (Order = 1 ,ExceptionType = typeof(sqlException),

   View = "错误处理的视图")]

Pubic  ActionResult About(){}

 

转载于:https://www.cnblogs.com/genesis/p/5222854.html

你可能感兴趣的文章
vs无法加载项目
查看>>
Beanutils基本用法
查看>>
玉伯的一道课后题题解(关于 IEEE 754 双精度浮点型精度损失)
查看>>
《BI那点儿事》数据流转换——百分比抽样、行抽样
查看>>
哈希(1) hash的基本知识回顾
查看>>
Leetcode 6——ZigZag Conversion
查看>>
dockerfile_nginx+PHP+mongo数据库_完美搭建
查看>>
Http协议的学习
查看>>
【转】轻松记住大端小端的含义(附对大端和小端的解释)
查看>>
设计模式那点事读书笔记(3)----建造者模式
查看>>
ActiveMQ学习笔记(1)----初识ActiveMQ
查看>>
Java与算法之(2) - 快速排序
查看>>
Windows之IOCP
查看>>
机器学习降维之主成分分析
查看>>
WebSocket & websockets
查看>>
openssl 升级
查看>>
ASP.NET MVC:通过 FileResult 向 浏览器 发送文件
查看>>
CVE-2010-2883Adobe Reader和Acrobat CoolType.dll栈缓冲区溢出漏洞分析
查看>>
使用正确的姿势跨域
查看>>
AccountManager教程
查看>>