C# 如何注入在Windsor注册的MEF[ImportingConstructor]依赖项?
我正在开发一个C#/MVC应用程序,该应用程序目前使用Windsor作为DI框架,并且刚刚开始探索MEF以使该应用程序更具可扩展性。它一直工作得很好,直到我的插件需要满足依赖性为止 如何将Windsor托管依赖项注入到MEF导入的类中,最好使用[ImportingConstructor] 我曾尝试从MefContrib扩展ContainerAdapterBase,但不知道如何让它与[ImportingConstructor]一起工作。此外,国际奥委会也不能使用MEF 谢谢 更新: 我目前的解决方案是编写一个由Windsor管理的简单的“DSL”,它提供插件所需的所有功能,然后在MEF向我传递插件实例时手动注入这些功能。可能有点讨厌,但它是有效的,这也意味着我不必从插件中进行任何服务定位,并且还提供了一个很好的边界来界定插件“允许”做什么C# 如何注入在Windsor注册的MEF[ImportingConstructor]依赖项?,c#,inversion-of-control,castle-windsor,mef,C#,Inversion Of Control,Castle Windsor,Mef,我正在开发一个C#/MVC应用程序,该应用程序目前使用Windsor作为DI框架,并且刚刚开始探索MEF以使该应用程序更具可扩展性。它一直工作得很好,直到我的插件需要满足依赖性为止 如何将Windsor托管依赖项注入到MEF导入的类中,最好使用[ImportingConstructor] 我曾尝试从MefContrib扩展ContainerAdapterBase,但不知道如何让它与[ImportingConstructor]一起工作。此外,国际奥委会也不能使用MEF 谢谢 更新: 我目前的解决方
如果您对这种方法有任何想法,我们将不胜感激。您是否考虑过使用Windsor而不是使用MEF来创建插件(我对MEF不是很熟悉,但Windsor是超级可扩展的)。我喜欢使用MEF的想法,因为它非常简单,而且是它的设计初衷,并且支持Windsor不喜欢在运行时丢弃的DLL中拾取类的一些东西。我更愿意在任何事情上使用Windsor,但在它不是合适的工具的地方,我感觉有点像是在磨鞋。我现在正在使用MEF&Unity解决同样的问题。想发布一些关于您如何解决问题的线索吗?不幸的是,大约一年后,我们放弃了MEF方法,我再也无法访问代码了,对不起……DSL方法在需要时运行良好。