【问题标题】:Free analogue of the PostSharp required [closed]需要 PostSharp 的免费模拟 [关闭]
【发布时间】:2013-01-17 03:42:16
【问题描述】:

我听说过 PostSharp,但我想知道是否还有其他类似的工具 - 任何类似于 PostSharp 的工具?

是否有任何库可以用作 PostSharp 的替代品?任何其他可以后处理程序集并基于属性注入代码的工具?

PostSharp 的任何免费和/或开源替代品都会特别有趣。

谢谢。

【问题讨论】:

  • 有人知道“类似 PostSharp”是什么意思吗?
  • @Gabe:analog 的意思是“类似的东西”,在上下文中它意味着合适的替代品。
  • 我的意思是可以用来代替 PostSharp 的替代工具。对不起,我是因为我的心态才写的。在俄语中,我们使用“analogue”这个词比“alternative”多得多。另一个原因是我的英语知识很差。
  • 这个词的用法是可以接受的。 @Gabe,如果你使用 Chrome,这里有一个很棒的扩展,可以让你轻松查找字典 chrome.google.com/extensions/detail/…
  • mgijmajocgfcbeboacabfgobmjgjcoja 是字典扩展的好名字! :D

标签: c# .net attributes aop postsharp


【解决方案1】:

对于我们正在开发的一些开源库,我们还需要 PostSharp 的免费替代品,这些库需要组合以及 PostSharp 的其他“专业”功能需要许可费用。由于我们不想创建实际上不是免费的开源软件,因此我开始使用CodePlex 上的 Microsoft.Cci 库。这些库绝对支持 PostSharp 所做的一切,然后是一些(如果需要,您可以从头开始创建整个程序集)。事实上,PostSharp 网站将其列为备选方案。

我不确定上面提到的 CciSharp 项目的状态,但它是基于这些库的。

对于临时开发人员而言,使用 Microsoft.Cci 的缺点是这些库非常强大,以至于它们最终极难使用。出于这个原因,我启动了一个名为 Afterthought 的开源项目,该项目利用了 Microsoft.Cci,但提供了一个简单的 API 足迹,并且不需要 Cci 知识或其依赖项即可工作。

如果功能集符合您的需求,我的建议是使用 PostSharp 社区版,因为这是一个性能不错的成熟解决方案。如果您很勇敢并且需要执行一些复杂的模组,请使用 Microsoft.Cci 库。如果您介于两者之间并且愿意帮助提供有关功能集的反馈,请尝试 Afterthought。

【讨论】:

  • 感谢您的回复。是的,我们决定使用 PostSharp 的社区版,因为它的功能涵盖了我们所需要的一切。但也很高兴了解其他一些工具!
【解决方案2】:

PostSharp 社区版?它是免费的。

【讨论】:

  • 哇。我从来没有想过不同的版本。谢谢你的提示。但是最初的问题呢?你知道同样的开发工具吗?
  • @keykeeper:您还没有告诉我们您不喜欢 PostSharp 的哪些方面,那么我们如何推荐更适合您需求的东西?
  • 我没有要求更好的东西。我只是要求一个可以做同样事情的替代工具。
  • 对于 C# 和 .NET,没有处于同一级别的工具。
【解决方案3】:

CciSharp,但还不是真正的生产质量。

附:通过“非生产质量”,我并不是说您不能在生产中使用它(当然可以),而是该程序及其 API 是具有定期破坏兼容性更新的库 (CCI) 的一部分。

【讨论】:

  • 感谢您的回复。我也听说过 Mono.Cecil,但它是非常低级的工具,几乎无法用于有严格时间限制的项目。
【解决方案4】:

Afterthought: 新的替代品,看起来很有希望

猜你喜欢
  • 2012-12-16
  • 2011-09-25
  • 1970-01-01
  • 1970-01-01
  • 2010-09-10
  • 2010-12-31
  • 1970-01-01
  • 2011-05-09
  • 2011-11-01
相关资源
最近更新 更多