博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ASP.NET MVC 拦截器IResultFilter
阅读量:6165 次
发布时间:2019-06-21

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

在ASP.NET MVC中,有一个Result拦截器,实现ResultFilter需要继承一个类(System.Web.Mvc.FilterAttribute)和实现一个类(System.Web.Mvc.IResultFilter),

System.Web.Mvc.IResultFilter接口有两个方法:

1、OnResultExecuting方法在操作结果执行之前调用。

2、OnResultExecuted方法在在操作结果执行后调用。

下面是我测试的代码:

1、先新建一个ResultFillterAttribute类:

1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Web; 5  6 namespace AttributeDemo.Common 7 { 8     ///  9     /// Result拦截器10     /// 11     public class ResultFillterAttribute : System.Web.Mvc.FilterAttribute, System.Web.Mvc.IResultFilter12     {13 14         #region 执行完action后调用15         /// 16         /// 执行完action后调用17         /// 18         /// 19         void System.Web.Mvc.IResultFilter.OnResultExecuted(System.Web.Mvc.ResultExecutedContext filterContext)20         {21 22         } 23         #endregion24 25         #region 在操作结果执行之前调用26         /// 27         /// 在操作结果执行之前调用。28         /// 29         /// 30         void System.Web.Mvc.IResultFilter.OnResultExecuting(System.Web.Mvc.ResultExecutingContext filterContext)31         {32 33         } 34         #endregion35 36 37     }38 }

2、新建一个ResultFillterTestController控制器类,在控制器或者action写属性AttributeDemo.Common.ResultFillter,即可实现对控制器或action的结果进行拦截:

1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Web; 5 using System.Web.Mvc; 6  7 namespace AttributeDemo.Controllers 8 { 9     /// 10     /// 测试Result拦截器11     /// 12     //[AttributeDemo.Common.ResultFillter]13     public class ResultFillterTestController : Controller14     {15         //16         // GET: /ResultFillterTest/17 18         [AttributeDemo.Common.ResultFillter]19         public ActionResult TestResultFillter()20         {21 22             return View();23         }24 25 26         public ActionResult Index()27         {28             return View();29         }30 31     }32 }

 

转载于:https://www.cnblogs.com/linJie1930906722/p/5770792.html

你可能感兴趣的文章
Solr Facet 查询
查看>>
C++类的继承一
查看>>
数据库分库分表(sharding)系列(五) 一种支持自由规划无须数据迁移和修改路由代码的Sharding扩容方案...
查看>>
巧用VMware Workstation的clone来制作虚拟机模板
查看>>
Spring-Mybatis MapperScannerConfigurer 取不到PropertyPlaceholderConfigurer里的值
查看>>
HP DL380G4服务器前面板指示灯的含义
查看>>
数据结构_树结构
查看>>
常用URL地址
查看>>
每天一个linux命令(19):find 命令概览
查看>>
MySQL kill操作
查看>>
windows下看端口占用
查看>>
Decommissioning a Domain Controller 降域控
查看>>
Character中的奇葩
查看>>
c++书籍推荐
查看>>
轻松监听Azure service health 状态
查看>>
获取SQL SERVER某个数据库中所有存储过程的参数
查看>>
在Linux下编译安装Apache2(2)
查看>>
Method Swizzling 处理一类简单的崩溃
查看>>
AngularJS学习!
查看>>
在Eclipse中搭建Python Django
查看>>