码迷,mamicode.com
首页 > Web开发 > 详细

ASP.NET开发知识总结

时间:2016-03-01 12:19:16      阅读:171      评论:0      收藏:0      [点我收藏+]

标签:

1、统一异常处理

? ? 某商城采用的异常处理方式,是全局统一捕捉,统一处理

? ?思路:

? ?一、定义异常过滤器

? ?技术分享

?

? ?实现 MyExceptionFilter : FilterAttribute,IExceptionFilter,重写OnException方法,

? ?IExceptionFilter会在出现异常的时候调用

?二、配置过滤器

技术分享

注册MyExceptionFilter?

技术分享

使用:

例如:我们在controller 抛的异常即会被MyExceptionFilter?自动捕获。

技术分享

?

?

2、统一身份验证

商城身份验证:

1、可自由配置,针对哪些页面,甚至哪些功能需要进行身份验证

2、全局性,全局功能可以调用同一套身份验证体系。

?

思路:

1、配置过滤器,并自定义身份校验逻辑

技术分享

?

2、代码:?需重写OnAuthorization()方法

技术分享

3、身份校验

技术分享

在查看产品明细时,就需要对当前用户的身份进行验证。

?

?

?

3、权限控制

商城权限控制适用场景:

1、可适应单角色控制

2、可适应混合角色控制(用户可能为角色1,同为也可能为角色2)

3、可支持功能扩展

4、权限控制粒度:功能点

原理:MVCUrl的执行是按照Controller->Action->View页面 ?ASP.NET MVC允许我们创建action过滤器Filter,我们都知道在Action上使用的每一个 [Attribute]大都是自定义的Filter

mvc提供四种类型的Filter接口:IActionFilterIAuthorizationFilterIExceptionFilterIResultFilter 这四种Filter足以满足我们所要实现的功能,它还提供了几个现

我需要的使用的是IActionFilter.

具体实现:

1、定义一个自定义的Action拦截器,继承ActionFilterAttribute接口

技术分享

2、重写onActionExecuting方法,该方法?在调用操作方法前调用。在该方法内写自己的权限处理逻辑。

技术分享

3、定义两个属性:ModuleCode 和 ActionCode ,顾名思义,一个是模块编码,一个是功能点编码

技术分享

?

4、比如我要对"取消产品线经理"进行权限控制,此时,每次用户使用这个方法时,都会对用户的权限进行校验后,再

真正执行CancelProductUserRole()方法。

技术分享

5、过滤器注册

技术分享

6、自己根据系统实际的业务需求初始化功能点

?


?

ASP.NET开发知识总结

标签:

原文地址:http://www.cnblogs.com/xulele/p/5230143.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!