如果你遇到 “找不到请求的 .Net Framework Data Provider。可能没有安装”这个问题,其他方式都试过了还不行,就试试下面这个方法吧,每次遇到同样的报错可能是不同的原因引起的,要具体排查尝试,反正我都遇到了个遍,下面给大家说下具体怎么操作的吧......
备注:配置文件里面的版本号,也就是数据库的版本号,一定要比你程序引用的高或者一样
备注:配置文件里面的版本号,也就是数据库的版本号,一定要比你程序引用的高或者一样
备注:配置文件里面的版本号,也就是数据库的版本号,一定要比你程序引用的高或者一样
首先,确定我们系统上已有的Data Provider,没有的自己搜索安装
1、第一步先查看自己mysql的版本和程序里面的mysql版本是否一致
mysql数据库版本:(通过navicat和命令执行都可以查看,如下图)
NET项目中引用的mysql.data的版本,如下图:()
2、第二步如果你上面两个版本都是一致的,其实就不用看下面的了,如果不一致,请继续往下看,先找到一个文件 =》具体文件路径:C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config下面的machine.config,如下图:
3、第三步,编辑文件machine.config,找到<system.data>这个节点里面的<DbProviderFactories>(如果没有请复制下面代码添加即可),其中的Version=8.0.31.0(这个版本是你上方数据库执行的版本,见第一步),添加好了然后保存,结果如下图,
<DbProviderFactories>
<remove invariant="MySql.Data.MySqlClient" />
<add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=8.0.31.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
</DbProviderFactories>
4、第四步,就重启/编译一下程序,再次运行即可,正常登录