Azure MEF Open generics

本文关键字:generics Open MEF Azure | 更新日期: 2023-09-27 18:35:02

我有一个非常奇怪的问题,在 Azure 辅助角色下工作时Microsoft程序集目录未发现打开的泛型导出。

程序集目录看不到打开的泛型导出,而它可以看到普通的非泛型导出。

否则,从 Web 角色导出时,打开的通用导出会发现并导入,没有任何问题。

当将 MEF 从 MEF 2.0 中内置的 .Net Framework 4.5 切换到 nuget 的 Microsoft.Composition 2.0 时,开放的泛型导出工作得很好。

任何线索为什么会在 MEF 2.0 中发生这种情况?这是否与 Azure 辅助角色或 MEF 2.0 库本身的限制有关?

我附加了一个测试云项目来显示问题。若要运行项目,需要 VS 2012 和 Azure SDK 2.0

项目链接

Azure MEF Open generics

经过几次试验和大量阅读,我发现在这里使用 codeplex 中的 Microsoft.Composition,它在 Azure worker 下运行良好。

对我来说,在我遇到了 MEF 的所有麻烦之后,我决定改用更可靠的 IOC 方差 Unity。