现在我认为该寻求帮助了...
问题是:我有一个.Net Core 2.0 WebApi应用程序(A),我想重用我的.Net Framework 4.5.2库(B)。
我为B创建了nuget包,并在A中引用了nuget包。
这些库下载到了C:\Users\username.nuget\packages文件夹中,但是当我在代码中使用B时,它会出错并显示以下错误信息:
System.IO.FileLoadException:“无法加载文件或程序集 'xxx.TradeServices.Common, Version=2.1.289.1, Culture=neutral, PublicKeyToken=null'。找到的程序集清单定义与程序集引用不匹配。(HRESULT 异常:0x80131040)”
我随后添加了一些虚拟代码。
var client = new TradeServicesClient(EnvironmentType.Production);
xxx.TradeServices.Common已加载。
但是另一个异常出现了,指出无法加载依赖的dll。
FileNotFoundException: 无法加载文件或程序集'Ice, Version=3.7.0.0, Culture=neutral, PublicKeyToken=0c5ebb72d74932c6'。系统找不到指定的文件。
我已经检查了所有的依赖项,它们在C:\Users\username.nuget\packages文件夹中正确下载了。
我不确定为什么.Net Core会表现出这种方式。似乎依赖链没有被加载。请帮助我弄清楚发生了什么。