我正在尝试找到一个相当成熟/稳定且可免费获得的(最好是开源的)库,用于在.NET中执行AOP.我一直在寻找,发现下面的产品; 然而,他们中的大多数似乎死了:
PostSharp - 这是通常推荐用于.NET的AOP解决方案,但它是商业产品,因此适用某些使用限制.(但是,它似乎可以免费用于个人或开源项目.)
Spring.NET - 不仅仅是关于AOP,所以如果只想做AOP,它可能太强大了.(?)
策略注入应用程序块 - 来自Microsoft,我希望至少可以维护它.
Castle Windsor与 DynamicProxy一起- 主要不是AOP库,但显然它可以用于此目的.
方面# - 这对我来说似乎已经死了.
Aspect.NET - 对我来说这似乎也很糟糕.
NAop - 显然不再支持.
AOP.NET - 这应该是NAop的继承者,而且看起来它不久前就已经死了.
可能还有更多.从上面的列表中我可以看出,在.NET上进行AOP的唯一真正选择是PostSharp(即使它是商业产品),Spring.NET,微软的Policy Injection Application Block,或者也许是Windsor.
我忘记了任何重大选择吗?
另请参阅StackOverflow上针对C#的开源面向方面库的建议.我发布了一个新问题,因为我对.NET的各种AOP解决方案的开发/维护状态特别感兴趣.
您不需要Windsor使用DynamicProxy.Windsor将DynamicProxy用于自己的目的,就像NHibernate,RhinoMocks,Moq或其他库/应用程序/框架一样.如果只需要运行时AOP,没有IoC容器,请单独使用Caste DynamicProxy.
它是积极开发的,最后一次预发布是在2周前发布的,最终发布(v2.5)预计在本月发布.
注意:在以前的版本中(最高v2.2),DynamicProxy过去常常使用自己的程序集Castle.DynamicProxy.dll.它后来被移动到Castle.Core.dll,现在不需要其他程序集来使用它.资源
| 归档时间: |
|
| 查看次数: |
6401 次 |
| 最近记录: |