我目前正在与MEF合作开发MVC Web应用程序,以便a)开发人员可以为该网站开发插件,并且用户可以选择他们想要的帐户插件。这意味着我的一些作文必须在应用程序已经启动并且用户已经登录之后才会发生(它进入数据库,抓取插件的程序集并将它们添加到当前目录中)。在运行时更新MEF目录
它的工作方式是我有一些库存储在数据库中,当用户登录时加载到AssemblyCatalog
中,我可以在我的Composer中成功添加到我现有的AggregateCatalog
中。但是,在我的一个库中,我有一个IController
合约没有被导出,导致特定的小部件崩溃。我不完全确定如何强制MEF在启动后重新组合。我在这里张贴,希望有人对我有一些建议。
我的代码是基于excellent blog series by Matt Abbott的,所以我很希望他会提供一些建议。
感谢您修复链接,莱斯特。 :) 非常感激。 – 2012-02-18 16:08:09