托管插件框架是否存在

Is Managed Addin Framework alive

我需要使用在其 AppDomain 中执行的加载项来实施解决方案。我遇到了 MAF,根据描述,这是我需要的。

但是文档及其 CodePlex 项目似乎有点过时,文档中的某些页面对于 .NET "Current version" 不存在。

我还找到了有关 MAF 的陷阱和复杂性的帖子。

所以我现在不确定是应该使用它还是自己完成所有工作(加载项管理、loading/unloading AppDomains 等)。

任何想法and/or 经验表示赞赏

MAF 是 .Net 框架的一个受支持部分,但多年来并未受到太多关注。

优点

  1. 支持从 process/app 域加载插件
  2. 支持插件的向后兼容性

缺点

  1. 复杂(管道中需要 5 个 DLL)
  2. 需要工具投资(您需要 update/maintain 您自己的管道生成代码副本)
  3. 自发布以来未收到任何功能更新
  4. 网络上没有很多关于最佳实践或人们 运行 关注
  5. 的问题的信息

虽然该列表中有更多缺点,但它确实有效并且大部分都符合您的预期。我的建议是尝试一下,看看它是如何工作的。归根结底,您的 API 的消费者正在使用一个界面,您以后可以随时换出 MAF 层,而您的加载项不需要更改。