2009-06-11 49 views
0

我们开发了一款产品(Core)。我们扩展并覆盖Core中的功能以创建定制应用程序(Product)。MEF会为产品工作吗?

产品具有对Core的引用,因此它可以从基本形式继承并覆盖功能。

MEF会在这里占有优势还是更适合插件?

回答

1

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

就你而言,你的核心可以搜索产品并在运行时实例化它。这意味着虽然产品仍然需要对Core的引用,但您的应用程序启动点仅需要引用Core,而不引用Product。我现在假设用户必须执行Product.exe,然后调用Core.dll来启动一切。使用MEF,用户将运行Core.exe,它将从Product.dll加载合同。架构会更干净。