在将软件项目迁移到新机器后,我遇到了一些问题。我试图让 VS2017、MySql.data 和我的 MySQL 数据库一起工作。我收到一条长错误消息(如下),暗示我的 mySql.Data 版本(8.0.16.0)清单与程序集引用不匹配(我不太了解这个概念)。该错误是奇怪的断断续续的-有时事情似乎(部分)起作用,而其他时候则没有。错误:
“属性'连接'的代码生成失败。错误是:对象'TableAdapterManager'上的'属性访问器'连接'引发以下异常:'无法加载文件或程序集'MySql.Dat,版本= 8.0.16.0,文化=中性, PublicKeyToken=c5687fc88969c44d' 或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。(HRESULT 异常:0x80131040)"
我正在使用 VS 的数据源功能通过设计视图添加数据表 + 数据表适配器。
首先,我必须遵循一些指导才能让 VS2017 与 MySQL 一起工作。我不能只安装最新版本的“MySQL Connector”和“MySQL for Visual Studio”,因为这不起作用,会产生“usable connection already”错误。我在这里关注了这个,其中涉及为 VS 1.2.7 安装 MySQL Connector 6.9.8 + MySQL,这使得这方面的工作正常进行。
我还通过 NuGet 包管理器 V8.0.16.0 下载了 MySql.data
我读过+尝试过的一些东西:
确保 app.config 中 mySql 的正确版本:在我的 app.config 文件中没有对此的引用。
通过设置重新做连接字符串 - 没有解决
更改“machine.config” - 我更新了
dependentAssembly
如下元素:<assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" culture="neutral" /> <bindingRedirect oldVersion="6.7.4.0" newVersion="8.0.16.0" />
将构建更改为 x86
试图通过 NuGet 控制台安装 MySql.data 6.9.8
Install-Package MySql.Data -Version 6.9.8
... 包已被未列出 - 下载时出错。
我很沮丧,很难让一个成熟的技术(如 MySQL)与 Visual Studio 一起工作。这在我的开发人员中造成了非常令人沮丧的积压,因此非常感谢任何建议。