【发布时间】:2013-02-22 17:20:51
【问题描述】:
我以前使用过 MEF,但现在在使用较新的实现时遇到了问题。我正在导出从具有 [InheritedExport] 属性的基类继承的对象,并且正在尝试导入它们。
以前,我只需要一个带有 [ImportMany(typeof(mytype))] 的数组属性,然后使用 CompositionInitializer.SatisfyImports(this) 来使导入工作,但现在我有两个问题:
1) 导出位于不同的引用程序集中; 2)CompositionInitializer 似乎不存在于 4.5 框架中较新的 MEF 中。
我正在尝试创建一个 AggregateCatalog 来解决问题 #1,但不知道从哪里开始。
最后,我正在尝试导入一个可供整个 WPF 应用程序使用的集合,如果有人可以帮助我提出整体解决方案的话。
【问题讨论】:
-
据我所知,MEF2 向后兼容 MEF。您要从 Silverlight 迁移到 WPF 吗?
-
是的。这可以解释#2,即 CompositionInitializer。没有意识到那是 Silverlight 唯一的课程。