导入基数不匹配异常

时间:2012-06-27 15:32:39

标签: asp.net-mvc-3 mef

我有一个主应用程序和一个插件。主应用程序正在导出IHost对象,插件正在导入IHost对象。我跑了mefx,它认出了这两个。但是当我在插件上执行/causes时,它会给我一个ImportCardinalityMismatchException。我的容器看到了插件,但是当我调用Me.container.getExports(of IController)()时,它不会返回任何内容。

我的控制器看起来像这样:

Class Controller 
   Implements IController   
   ' ...
    <Import()>
    Public Property Host As Lazy(Of IHost)
   ' ...
End Class

1 个答案:

答案 0 :(得分:1)

我的插件中必须<ImportMany()>。然后,对于我导入的变量,我需要将其设为IEnumerable(Of Lazy(Of IHost))或使用Lazy(of IHost),如果您想要<Import()>