MEF缓存程序集目录 - 延迟加载程序集

4

我对在MEF的旧版本中提供的示例中引入的CachedAssemblyCatalog类非常感兴趣。该类允许加载一个小型程序集,其中只包含导出数据,而不是整个程序集,并且仅在需要该程序集的部件时才加载完整的程序集。

我想在我的应用程序中使用此功能,但我并不确定此代码的稳定性/可靠性以及是否有关于此功能的未来计划。它是否即将或者根本成为MEF的必要部分?

是否有人在其应用程序中使用过此代码并可以分享他的印象?它稳定吗?是否正常工作?我有点沮丧的是Google上几乎没有关于这种类型目录的数据,而缓存示例也不再出现在当前可用的示例中。

任何意见都将不胜感激。

2个回答

1

针对此问题,我在MEF论坛上给出了简短的答复。

我们没有积极维护这个示例,并且不认为它是稳定的。希望它对您有所帮助,但我们没有计划更新或进一步开发它。

这并不是我所期望的。我认为这可能是一个非常有用的功能。

编辑:最终我自己实现了这个功能,并将其发布到GitHub


0

关于缓存的程序集我不确定,但是关于MEF,我建议你查看Bryan的博客:http://www.bryanavery.co.uk/post/2010/05/27/Using-MEF-to-provide-PlugIns.aspx

一般来说,使用MEF的Export和Import比我用过的任何其他IoC都要快得多。

代码的稳定性非常好,只要你有正确的dll位置。

此外,你可以在这里找到简单的代码示例: http://daysincode.blogspot.co.uk/2012/04/implementing-mef-with-list-of.html

否则,我认为最困难的是理解MEF如何配合以及引用集合是如何构建的。 它为你的应用程序提供了非常方便的插拔选项,并且易于升级每个实现。

如果你有更多问题,请随时问。


我已经相当熟悉MEF并在我的应用程序中使用它。我询问的是CachedAssemblyCatalog或类似的东西,而你的回答并没有回答我的任何问题。 - Adi Lester
在这种情况下,我只能向您引用Bryen博客中的链接,否则我无法提供帮助。 - cpoDesign

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接