C# 某些机器上出现MEF问题,但其他机器上没有

C# 某些机器上出现MEF问题,但其他机器上没有,c#,.net,mef,C#,.net,Mef,我有一个.NET4.0项目,我被要求修改它。该项目使用MEF在运行时加载所需的功能 此功能以dll的形式提供,该dll在解决方案中有自己的项目 我已经添加了4个新项目,基于与其他dll使用的模板相同的模板 在应用程序的另一部分中,所有dll都以以下方式加载: var exporters = Directory.GetFiles(ImporterConfig.GetInstance().ExporterPluginsPath, "*.Exporters.*.dll"); foreach (var

我有一个.NET4.0项目,我被要求修改它。该项目使用MEF在运行时加载所需的功能

此功能以dll的形式提供,该dll在解决方案中有自己的项目

我已经添加了4个新项目,基于与其他dll使用的模板相同的模板

在应用程序的另一部分中,所有dll都以以下方式加载:

var exporters = Directory.GetFiles(ImporterConfig.GetInstance().ExporterPluginsPath, "*.Exporters.*.dll");

foreach (var exporter in exporters)
{

    catalog.Catalogs.Add(new AssemblyCatalog(Assembly.LoadFile(exporter)));

    AddConfigurationToConfigFile(exporter);
}
在我的机器上,当我尝试运行时,我的修改没有被修改。奇怪的是,在其他机器上,它确实如此

我似乎找不到什么能解释它的区别


这里有人有什么想法吗?

您是在Visual Studio中运行还是双击可执行文件?如果运行可执行文件,您可能必须公开并运行通过发布生成的setup.exe文件。您电脑上的网络库或dll可能与生成软件的电脑不同。您是否确保相关dll正确输出到您电脑上的插件路径?我正在Visual Studio中运行该应用程序。是的,正在正确的目录中创建dll。我可以看到它们正在被找到,但由于某些原因它们没有被加载,但我没有得到一个错误。当应用程序尝试加载它们时