C#MEF-程序集在某些机器上加载,但在某些机器上不加载

时间:2020-04-17 15:08:45

标签: c# mef

我有以下情况。

  • 我创建了一个Interface和一些实现类。
  • 我使用[Export(typeof(interfaceName))]标记了实现类,以便使用MEF
  • 然后,我创建了一个AggregateCatalog并向其中添加一个DirectoryCatalog,该指向指向带有应注入/加载的程序集的直接方向
  • 此后,我创建了一个CompositionContainer作为构造函数参数的AggregatedCatalog

现在该过程应该一切正常,因为一切都很好,并且在运行时加载/注入了实现类。但是只在我的机器上,或者说在某些机器上更好。在其他情况下,它只是不注入/加载实现类。我的第一个猜测是.Net Framework版本有所不同。我检查了,事实并非如此。第二个猜测是,由于操作系统版本不同。也并非如此。好的,然后我在无法正常运行的机器上识别出实现类的dll的配置文件丢失了。添加了它们,但仍然无法正常工作。 附带说明一下,我们不会在VS之外运行应用程序,而是在发布模式下构建它,并复制所有dll和配置文件,基本上每个文件都位于bin / release文件夹中。该应用程序是必须注册的服务。

此刻,我不知道如何进一步调试此问题,这里有人提示吗?

0 个答案:

没有答案
相关问题