MEF会为产品工作吗?

时间:2009-06-11 16:01:37

标签: c# .net winforms inversion-of-control mef

我们开发了一款产品(Core)。我们在Core中扩展和覆盖功能以创建定制应用程序(产品)。

Product引用了Core,因此它可以从基本表单继承并覆盖功能。

MEF在这方面是优势还是插件更多?

1 个答案:

答案 0 :(得分:1)

我认为MEF会对你有利。 MEF可以用于插件,仅适用于在运行时“组合”的应用程序。

在您的情况下,您的核心可以搜索Product并在运行时实例化它。这意味着虽然Product仍需要对Core的引用,但您的应用程序启动点只需要引用Core而不是Product。我现在假设用户必须执行Product.exe,然后调用Core.dll启动所有操作。使用MEF,用户将运行Core.exe,它将从Product.dll加载合同。架构会更清洁。