2

.NET 应用程序是否有任何插件管理器?我想用 C# 或 VB.Net 构建我的程序的“核心”,然后能够使用某种插件管理器/组合脚本和 GUI 来扩展它。

那里有类似的东西吗?

4

1 回答 1

2

Microsoft 具有为此而构建的托管可扩展性框架(MEF)。MEF 作为 .NET 4 的一部分提供。来自 CodePlex 站点:

托管可扩展性框架简化了可扩展应用程序的创建。MEF 提供可用于加载应用程序扩展的发现和组合功能。

MEF 解决了哪些问题?

MEF 为运行时可扩展性问题提供了一个简单的解决方案。到目前为止,任何想要支持插件模型的应用程序都需要从头开始创建自己的基础架构。这些插件通常是特定于应用程序的,不能在多个实现中重用。

  • MEF 为宿主应用程序提供了一种公开自身和使用外部扩展的标准方式。扩展,就其性质而言,可以在不同的应用程序中重用。但是,扩展仍然可以以特定于应用程序的方式实现。扩展本身可以相互依赖,MEF 将确保它们以正确的顺序连接在一起(另一件事您不必担心)。
  • MEF 为您的应用程序提供了一组发现方法来定位和加载可用的扩展。
  • MEF 允许使用附加元数据标记扩展,这有助于丰富的查询和过滤
于 2010-12-13T23:04:45.440 回答