AOP在.net停的实现
AOP在.net下的实现
如题,有没有这方面的框架例子?
------解决方案--------------------
http://www.cnblogs.com/wayfarer/articles/256909.html
------解决方案--------------------
看这个:
http://weblogs.asp.net/podwysocki/archive/2008/03/28/understanding-aop-in-net.aspx
个人推荐PostSharp/Cecil,好用且高效。
------解决方案--------------------
和web应用框架无关。
通常自己写太费功夫,都是用现成的。多数类库都是dynamic proxy方式,如:
spring.net
Castle DynamicProxy
微软企业库的 Unity
FluentAOP
动态代理方式的缺点就是只能用于接口或虚方法,要事先设计好,不是很灵活。
要好用的话还是IL-Weaving方式的,就是PostSharp/Cecil,不过PostSharp是收费的。
当然这种方式下由于自由度很大,很容易把程序搞乱,调试阅读什么的都困难,所以一定要有节制,在适合场合使用。
------解决方案--------------------
在下一版的C#中,AOP以及元编程会有非常优雅的实现,届时什么Spring.net估计都得死掉。具体我不能透露太多。
如题,有没有这方面的框架例子?
aop
框架
------解决方案--------------------
http://www.cnblogs.com/wayfarer/articles/256909.html
------解决方案--------------------
看这个:
http://weblogs.asp.net/podwysocki/archive/2008/03/28/understanding-aop-in-net.aspx
个人推荐PostSharp/Cecil,好用且高效。
------解决方案--------------------
和web应用框架无关。
通常自己写太费功夫,都是用现成的。多数类库都是dynamic proxy方式,如:
spring.net
Castle DynamicProxy
微软企业库的 Unity
FluentAOP
动态代理方式的缺点就是只能用于接口或虚方法,要事先设计好,不是很灵活。
要好用的话还是IL-Weaving方式的,就是PostSharp/Cecil,不过PostSharp是收费的。
当然这种方式下由于自由度很大,很容易把程序搞乱,调试阅读什么的都困难,所以一定要有节制,在适合场合使用。
------解决方案--------------------
在下一版的C#中,AOP以及元编程会有非常优雅的实现,届时什么Spring.net估计都得死掉。具体我不能透露太多。