codesmith连接Mysql提示“找不到请求的 .Net Framework Data Provider。可能没有安装。"

时间:2024-06-24 16:36:32

1,首先需要将MySql.Data.dll复制到codesmith安装目录下bin文件夹下,注意dll的版本

2,其次因为codesmith7采用的是.net4.0的配置文件,(64位系统)找到C:\Windows\Microsoft.Net\Framework64\v4.0.30319\Config\machine.config

在其中的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=6.7.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />

注意其中的版本号要与上面复制到codesmith下面mysql.data.dll版本号一致!

重启codesmith,问题解决,配置CodeSmith连接字符串

Database=xxx;Data Source=10.1.43.23;User Id=root;Password=123456;port=3305

注:

如找不到MySql.Data.dll,可以在项目或解决方案中使用nuget安装

使用Nuget安装install-package Mysql.Data.Entity
,安装成功可以在packages中找到对应dll文件,右键查看版本信息

注:直接安装mysql-connector-net-6.x.x.msi后也可以正常使用codesmith

codesmith连接Mysql提示“找不到请求的 .Net Framework Data Provider。可能没有安装。"