asp.net mvc过滤器,MVC过滤器
过滤器其实就是。网中的特性,在。net.35之后我们可以在类或者方法名称上面加某种特性,而在。会员管理系统环境下,有几个比较重要的特性,如如认证
它主要有在权限验证上,有时我们习惯叫它"过滤器",原因是它可以把不符合要求的用户过滤掉,呵呵,下面是系统中常见的用户权限过滤器的代码,供大家学习
一命名空间网页.属性
4 ///摘要
5 ///用户验证列举
6////摘要
七公共枚举认证类型
9 ///摘要
10 ///登录
11////摘要
12登录,
13 ///摘要
14 ///后台登陆
15////摘要
16背景登录,
17 ///摘要
18 ///注册
19////摘要
20寄存器,
23 ///摘要
24 ///用户验证过滤器:前台
25////摘要
26公共类用户身份验证:AuthorizeAttribute
28公共认证类型authentic ation { get设置;}
29 ///摘要
30 ///构造函数
31////摘要
32公共用户认证()
33:这(AuthenticationType .登录){ }
34公共用户认证(认证类型认证)
36这个。认证=认证;
38 ///摘要
39 ///执行前验证
40////摘要
41公共覆盖授权无效(授权上下文过滤器上下文)
44 //验证不成功的时候
45开关(这个。认证)
47例鉴定类型。登录:
48如果(!客户端助手目前。HasUserInfo)
49过滤上下文result=new redirectorouterresult( Default ,new RouteValueDictionary { { Action , LogOn },{ Controller , Account },{ returnUrl ,HttpContext .当前。请求。网址。tostring()} });
50破;
52例鉴定类型。背景登录:
53如果(字符串IsNullOrEmpty(SessionAction .read session( Background _ Current _ UserID ) Convert .ToInt32(会话操作.读取会话( Background _ Current _ UserID ))0)
54过滤上下文result=new redirectorouterresult( Default ,new RouteValueDictionary { { Action , LogOn },{ Controller , Account },{ returnUrl ,HttpContext .当前。请求。网址。tostring()} });
55破;
56例鉴定类型。注册:
57过滤上下文. result=new redirectorouterresult( Default ,new RouteValueDictionary { { Action , Register },{ Controller , Account });
58破;
59默认值:
60过滤上下文. result=new redirectorouterresult( Default ,new RouteValueDictionary { { Action , Index },{ Controller , Home });
61破;
66 }