回到目录

什么是LindAspects

之前写了关于Aspects的文章《Lind.DDD.Aspects通过Plugins实现方法的动态拦截~Lind里的AOP,今天主要在设计思想上进行刨析一下,对缓存拦截器一直没有实现,所以文章了也一直没有发出来,让大家等这么久实在不好意思。LindAspects主要是面向切面编程AOP的一种实现,就像MVC框架里的Filter,Filter会自己注入到了每个Action执行的各个环节里,而我们可以直接实现自己的Filter即可,例如只要是继承ActionFilter,那么你的Filter在Action执行时就可以被动态执行,这种设计就相当于把整个Action横切开来,注入我们需要的代码,这大概念就是面向切面(方面)编程的真谛吧!

LindAspects原理是什么

主要通过Emit实现对方法的重写,这个方法不向Unity.Interception非要是虚方法,咱们的Emit本质上是建立一个新的类型,然后建立一个新的方法,这个方法里再去执行当前被拦截的方法的主体,然后通过主体方法实现的AspectAttribute来控制是在主体执行前注入还是在主体执行之后注入!

延伸阅读

学习是年轻人改变自己的最好方式-Java培训,做最负责任的教育,学习改变命运,软件学习,再就业,大学生如何就业,帮大学生找到好工作,lphotoshop培训,电脑培训,电脑维修培训,移动软件开发培训,网站设计培训,网站建设培训学习是年轻人改变自己的最好方式