SPP.NET MVC的Action和Result、异常过滤器以及过滤器优先级、多重过滤器
来源:互联网 发布:怎么用淘宝卖东西 编辑:程序博客网 时间:2024/06/06 21:01
1.微软提供的默认的过滤器如下:
Authorization filter:实现IAuthorizationFilter,在所有Filter和Action执行之前执行,默认继承AuthorizationAtrribute抽象类
Action Filter实现接口IActionFilter,分别在Action执行之前和执行之后,默认继承ActionFilterAttribute抽象类
Result Filter实现接口IResult Filter,分别在Result 执行之前和执行之后,默认继承Result FilterAttribute抽象类
Exception Filter实现接口IException Filter,分只有在filter或者Action method或者Action Result出现异常时执行,默认继承HandleErrorAttribute类
具体实现如下代码:
1.在Models下面建一个类:MyActionFilterAttribute
namespace MvcApplication1.Models
{
public class MyActionFilterAttribute : ActionFilterAttribute
{
public string name { get; set; }
public override void OnActionExecuted(ActionExecutedContext filterContext)
{
base.OnActionExecuted(filterContext);
HttpContext.Current.Response.Write("<br/>Action Executed:"+name);
}
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
base.OnActionExecuting(filterContext);
HttpContext.Current.Response.Write("<br/>Action Executing:" + name);
}
public override void OnResultExecuted(ResultExecutedContext filterContext)
{
base.OnResultExecuted(filterContext);
HttpContext.Current.Response.Write("<br/>Result Executed:" + name);
}
public override void OnResultExecuting(ResultExecutingContext filterContext)
{
base.OnResultExecuting(filterContext);
HttpContext.Current.Response.Write("<br/>Result Executing:" + name);
}
}
}
2.然后再控制器中添加如下代码:这样只是设置MyFilter视图的过滤器。
3.还可以设置全局过滤器:全局过滤器,优先级最低,但是可以作用到所有的控制器和action
当设置单个过滤器以及整个Controller的控制器、全局控制器并存时,根据优先级只执行单个过滤,这时只需要在自定义的过滤器代码上定义求权限即可,具体如下图所示:
- SPP.NET MVC的Action和Result、异常过滤器以及过滤器优先级、多重过滤器
- ASP.NET MVC : Action过滤器(Filtering)
- ASP.NET MVC的过滤器
- ASP.NET MVC的过滤器
- ASP.NET MVC的过滤器
- ASP.NET MVC的过滤器
- 多重过滤器的使用
- APS.NET MVC 过滤器
- ASP.NET MVC过滤器
- asp.net mvc 过滤器
- ASP .NET MVC过滤器
- 【转载】ASP.NET MVC的过滤器【Filters】
- ASP.Net MVC默认的过滤器
- MVC WebApi自定义异常过滤器
- MVC过滤器的介绍
- MVC 过滤器的使用
- MVC过滤器的使用
- MVC 过滤器
- apache配置https协议
- 【VBA研究】VBA编程产生不重复随机数
- UniversalImageLoader——异步加载图片
- ruby 进行双进程或多进程,并且设置时间
- Surrounded Regions
- SPP.NET MVC的Action和Result、异常过滤器以及过滤器优先级、多重过滤器
- 【整理】byte[], String 转换
- 个人知识管理工具及相关经验技巧
- ora-00064
- Eclipse中右键项目没有Project Facets的解决方法
- W3C CSS Standard
- MySql导出、导入数据库
- 杭电 2546 饭卡(01背包)
- 学好C语言的运算顺序与运算符