针对c#的开源面向方面库的建议

有关c#的开源面向方面库的任何建议。 谢谢

发布夏普

Spring.NET

我正在使用Castle Windsor和Dynamic Proxy,它们共同提供了一种通过外部XML配置应用标准AOP方法拦截的简单方法。

如果您有更高级的AOP需求, Aspect#可能会有用(也依赖于动态代理) – 但我发现Windsor完美地满足了我的需求。

请注意,动态代理仅提供运行时AOP。 有一些解决方案可以在编译时混合你的方面(虽然我不记得其中任何一个的名称)。

来自CastleProject的DynamicProxy可能是关于动态拦截的最轻量级和强大的解决方案。

我也建议使用Spring.NET,但这只是因为那是我唯一经历过的。 Spring.NET提供了更多(IoC,事务管理,良好的validation框架),但您可以使用它所需的内容。

Spring.NET总的来说很棒,它的AOP支持也是如此。

不知道为什么人们会说要避免它。 事实上,它是.NET世界中最稳定可靠的框架之一。

开发进度很慢,但这很好,因为它已经function丰富且稳定。