Microsoft MVC Preview 2 ActionFilterAttribute实际开发中的应用
这个功能大大节约了我们开发中的编码数量。它的定义我也不多说了,我只是把我自己已经用到的代码给大家共享一下
ActionFilterAttribute的定义:
或是写成这样
下面那种名称的定义在很用的时候可以缩略掉Attribute这个字段
ActionFilterAttribute中有2个重要的方法可以重写它。分别是OnActionExecuting和OnActionExecuted,分别是Action执行前和执行后的方法;
带参数的ActionFilterAttribute:
这里只要在ActionFilterAttribute方法中定义一个构造函数就可以了:
下面把实现的代码贴上来:
登陆:
使用:
在要验证登陆的页面的Action方法上加上[CheckLoginFilter]就可以了
权限验证(使用的是Membership的Role):
这里验证权限前先做了登陆验证
一开始我也是方法前加2个Attribute属性。结果发现他有时先运行第一个,有时又是第二个,也没去跟踪他的运行,有知道的人请告诉我一下为什么。
这里我就把登陆验证在这里再做了一次。
使用方法:
这里感觉有点缺陷。在ActionFilterAttribute中不能生成action和Controller的URL。所以会出现指定的情况。有高手知道怎么生成URL请指点下。
这贴子好久前就想写了,实在是方采太差,多就只能多贴贴图了 :)
祝各位身体健康,工作顺利!