C# 使用MySQL.Data类的问题

Blues Zhu 2023-09-18 17:09:27

这个应该是个挺愚蠢的问题,但是没有办法,没有专职程序员的公司,一点小活都是自己琢磨的

目前问题是这样的,设备上的电脑(Windows)通过C#脚本,和MySQL数据库沟通

在开发的电脑上,Visual Studio+MySQL,是可以跑通的,但是程序转移到设备电脑上出现如下报错:

Error: The type or namespace name 'MySql' could not be found (are you missing a using directive or an assembly reference?) at Line:12

复制了MySQL.data.dll到很多地方,不行,然后安装了mysql-connector-net-8.1.0,也不行?

怎么搞?

...全文
152 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Hello World, 2023-09-19
  • 打赏
  • 举报
回复

看看系统是不是64位的

Blues Zhu 2023-09-19
  • 举报
回复
@Hello World, 确实不是64位的,这个会有关系吗?
自由派 2023-09-22
  • 举报
回复
@Blues Zhu 源程序的.dll用32位的替换之后运行再打包
明天好,会的 2023-09-19
  • 打赏
  • 举报
回复

我已经很多年没有开发过windows应用程序了,提的建议可以参考一下。
检查你的安装包,是否把MySQL.data.dll都包含进去了,最好是通过打包程序来生成你的安装包。
从理论上讲,MySQL.data.dll就实现MySql的连接,但如果你使用了Entity Framework,还需要包含MySql.Data.Entity.dll。

Blues Zhu 2023-09-18
  • 打赏
  • 举报
回复

补充,使用regsvr32 注册MySql.data.dll会报找不到入口

明天好,会的 2023-09-19
  • 举报
回复
@Blues Zhu 这应该是一个.net的dll,不是win32的com组件(好老的词汇),只有windows中的com组件才需要使用regsvr32来注册。并且这个com组件也只有windows系统上才有。
Blues Zhu 2023-09-19
  • 举报
回复
@明天好,会的 大佬,那应该如何操作啊?
明天好,会的 2023-09-19
  • 举报
回复
@Blues Zhu 哈哈,我说了我好久没有做过windows下的开发了。如果能够在VS环境下正常运行,说明打包的环节出了问题。你检查一下打包环节,是否都包含了Mysql相关的dll。还有就是目标机器上的.net framework的版本和你的开发环境是否相同,本不该提这一条,出了问题还是要逐一排查。另外,我上面提到的MySql.Data.Entity.dll检查了没有,在目标机器上是否有这个?

110,603

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧