我想要 AOP 的 .net 解决方案?
我已经找到了 Postsharp...但我不知道它有多好。
I've already found Postsharp... but I don't know how good it is.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
我已经找到了 Postsharp...但我不知道它有多好。
I've already found Postsharp... but I don't know how good it is.
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(2)
如果您正在寻找轻量级 AOP 工具,可以阅读一篇文章“使用动态装饰器向对象添加方面”(http://www.codeproject.com/KB/architecture/aspectddecorator.aspx)。它薄而柔韧。
它描述了一种在运行时向对象添加方面而不是在设计时向类添加方面的方法。这种方法的优点是,您可以在使用对象时决定是否需要方面。
当今的大多数 AOP 工具都在类设计时在类级别定义方面。当您使用类的对象时,您没有灵活性。
If you are looking for a light weight AOP tool, there is an article "Add Aspects to Object Using Dynamic Decorator" (http://www.codeproject.com/KB/architecture/aspectddecorator.aspx). It is thin and flexible.
It describes an approach to adding aspects to object at runtime instead of adding aspects to class at design time. The advantage of this approach is that you decide if you need an aspect when you use an object.
Most of today's AOP tools define aspects at class level at class design time. And you don't have the flexibility when you use an object of the classes.
.NET 有很多类似 AOP 的解决方案 - PostSharp、Unity 拦截,Spring.NET AOP, LOOM.NET 仅举几例。
它们的不同之处在于编织方式(将方面应用于基本代码)——通常可以在 IL 中或在运行时完成。它们在语法、功能、创建/获取对象的方式、性能、学习曲线等方面也有所不同。您必须决定什么对您来说是重要的,然后我们可能会建议任何解决方案。
我建议您首先阅读 PostSharp 网站上的“AOP on .NET”文章。
There are plenty of AOP-ish solutions for .NET - PostSharp, Unity Interception, Spring.NET AOP, LOOM.NET to name just a few.
They differ in the way of weaving (applying aspects to base code) - generally it can be done in IL or at runtime. They differ also in syntax, capabilities, way of creating/fetching your objects, performance, learning curve etc. You have to decide what is important for you and then we can maybe suggest any solution.
What I suggest you first is to read the "AOP on .NET" article at PostSharp website.