在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
ASP.NET MVC Framework包括几种action filters:
不同类型的FilterASP.NET MVC Framework支持四种不同类型的filter:
filter的执行顺序按上面的列表中顺序进行。如验证(authorization)filter永远都是最开始执行的,异常(exception)filter永远都是最后执行的。 验证(authorization)filter用于实现在controller action上的验证和授权,如Authorize filter就是一个验证filter的例子; Action filter包含一些逻辑,用于该action执行之前或者之后。比如可以使用一个action filter来修改action返回的view data; Result filter包含一些逻辑,用于该action的view result执行之前和之后。比如可以修改一个view result在view被呈现到浏览器之前; 异常(Exception)action用于处理异常信息,同样可以使用异常filter记录错误日志。 这些的filter类型是根据指定的顺序执行的,如果需要控制他们的执行顺序,需要设置filter的Order属性。 这些类的基类为System.Web.Mvc.FilterAttribute类,如果需要实现一个特定的filter类型,可以创建一个继承这个类的类,并且实现一个或多个IAuthorization、IActionFilter、IResultFilter、ExceptionFilter接口。
ActionFilterAttribute基类为了让用户更简单的创建一个自定义action filter,ASP.NET MVC Framework提供了一个基类ActionFilterAttribute,这个类实现了IActionFilter和IResultFilter接口,并且继承了Filter类。 这里的术语并不完全一致,从技术上说,这个类继承ActionFitlerAttribute,并且同时实现了action filter和result filter接口,但是从宽松意义上说,在ASP.NET MVC Framework中,任何实现filter的类型都是action filter。 ActionFilterAttribute类有以下的方法可以重写:
|
请发表评论