程序集的清单定义与程序集引用不匹配

时间:2019-01-25 21:58:15

标签: vb.net

我的VB.Net应用程序想要使用System.Web.Http.dll的5.2.7版本,但是当我运行已编译的.exe(使用InnoSetup创建)时,我得到:

System.IO.FileLoadException:无法加载文件或程序集'System.Web.Http,Version = 5.1.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其依赖项之一。

我了解到此消息告诉我,在编译.exe时,在我的PC上的某个位置发现了5.1.0.0版,而是使用了它。但是经过硬盘搜索后,我只找到了该版本的两个实例,一个在C:\ Program Files(x86)\ Microsoft ASP.NET \ ASP.NET Web Stack 5 \ Packages \ Microsoft.AspNet.WebAPI.Core5.1.1中\ lib \ net45,另一个位于C:\ Program Files(x86)\ Microsoft ASP.NET \ ASP.NET Web Stack 5 \ Packages \ Microsoft.AspNet.WebAPI.Core5.1.2 \ lib \ net45。

我还在硬盘驱动器上发现了很多甚至更旧的版本。为什么使用其中一个而不使用其他任何一个,而我的GAC中没有这些?

如果我用5.2.7版本替换这两个版本并重新编译,它是否将仅使用我找到的其他版本之一而不是指定的版本?

我将所有正确版本的.dll放入安装该应用程序的文件夹中,所以我不明白为什么它使用5.1.0.0。我该如何解决这个问题?

谢谢,拉里

0 个答案:

没有答案