我目前得到以下错误。 在一个网站的locahost。
Could not load file or assembly 'MySql.Data, Version=6.5.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
虽然,参考肯定是有的在引用文件夹和DLL肯定是我的本地机器上它指向的地方。 我也曾尝试删除和重新添加引用。
有谁知道什么会导致这个错误?
还什么是大会的清单定义?
在此先感谢您的帮助,我非常感激。
Answer 1:
在Visual Studio中选择在Solution Explorer中引用然后在属性确保Specific Version属性设置为false 。
如果您有在此引用条目web.config ,编辑该文件并删除版本信息。
如果您关闭Visual Studio并打开项目文件使用文本编辑器,确保在项目文件中的程序集的版本没有列出,但只有名称和类型,所以只要删除以下:
, Version=6.5.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d'
那么它应该,如果您使用的是6.5.5或6.5.4,只要代码使用两种可用的类和方法的工作不管。
Answer 2:
我也经历过同样的情况,并设法与这些步骤解决问题,
仔细阅读错误信息,提供有用的信息,以纠正这种情况。 我不会改变machine.config文件。 因为它说应用程序无法找到组装MySql.Web,并试图引用版本一提的是版本= 6.7.4.0。
基于路径安装MySQL时,你将能够找到正确的汇编文件,例如:
C:\Program Files\MySQL\Connector NET 6.7.4\Assemblies\v4.0\MySql.Data.dll
将该文件复制到bin文件夹。 (我将所有文件复制到C:\ Program Files文件\的MySQL \ NET连接器6.7.4 \组件\ V4.0 \文件夹中bin文件夹)
希望这可以帮助! 谢谢
Answer 3:
我也遇到同样的问题非常几天前,当你有较早版本建立你的一些DLL,现在你必须改变依赖的DLL版本,但没有再次编译DLL你得到这个错误。 请检查您是否有这是建立在早期版本的任何组件。 虽然我们建立任何DLL,清单中的DLL它自己添加所有的依赖信息,以便需要时可以加载所有的人。 所以,如果你删除DLL版本,你需要重新编译所有的组件,然后使用
Answer 4:
这个问题也坚持MySql.Data的新版本。 只要改变从App.config文件的版本:
6.7.4.0
到oldVersion = “6.6.5.0”
Answer 5:
我在一个旧asp.net 2.0网站在新机器上有这个。 在我的情况下,从GAC MySQL的组件无法加载,因为它是.NET 4.0。 大会在web.config中重定向没有工作。 我固定它,如下所示:
从下载的NuGet和MySql.Web的MySql.Data特定版本: https://www.nuget.org/api/v2/package/MySql.Web/6.5.4 https://www.nuget.org/api/ V2 /包/ MySql.Data / 6.5.4
打开一个压缩工具(例如,7zip的)下载的软件包并提取NET 2.0组件进入故障asp.net网站的bin目录。
Answer 6:
我得到了同样的错误,文件绝对存在。 如果你看到旁边一个SGEN到你的错误,你可以试试这个:
在项目属性窗口去构建和在输出部分转到生成序列组装下拉。 更改值自动为关闭并重新建立。
如果你需要它,你可以将它设置回自动。
文章来源: asp server error ' Could not load file or assembly ' but the assembly is definitely there.