C# 未能加载文件或程序集“mysql.data”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配

发现在app.config中已经加了以下代码。这个代码有可能是在Nuget包安装mysql.data.dll 时自动生成的。
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="MySql.Data" publicKeyToken="C5687FC88969C44D" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-8.0.18.0" newVersion="8.0.18.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
解决方案:
1) 当我注释代码以后,程序恢复正常。
2) 发现是mysql.data.dll的版本不是8.0.18.0,我的版本是6.4.4.0。将newVersion参数改成6.4.4.0,也可以解决问题。
我用的是mysql.data.dll 6.4.4.0 版本的,这个版本基于.net framework 4.0 框架,执行上述解决方案后,还是没有成功,是在release下调试的,后面重新debug调试后不报错了。接着在测试,发现不更改代码里的版本号也是可行的。不知道啥原因。

浙公网安备 33010602011771号