您的位置:首页 > 数据库 > MySQL

关于mysql-connector-net和C#.net

2017-04-12 15:29 786 查看
如果使用ado.net链接mysql数据库则只需要引用  MySql.Data.dll即可,并不需要安装mysql-connector-net驱动程序;
如果使用EF的话需要安装mysql-connector-net驱动程序和mysql-for-visualstudio
这个vs里面链接数据源的插件,否则EF无法使用VS视图模型的浏览和创建以及更新数据库实体;

其中mysql-connector-net驱动程序安装目录包含了
MySql.Data.dll;
MySql.Data.Entity.EF5.dll;
MySql.Data.Entity.EF6.dll;
MySql.Fabric.Plugin.dll;
MySql.Web.dll;

注意:就算把mysql-connector-net安装目录下所有的类库都拷到bin目录而不在应用站点服务器上安装mysql-connector-net驱动程序,EF代码还是会报错,因为mysql-connector-net安装不仅装了各种dll类库,还写过机器上.net环境的全局的machine.config里加过
<system.data>
  <DbProviderFactories>
  <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.9.6.0, Culture=neutral,  
     PublicKeyToken=c5687fc88969c44d" />
</DbProviderFactories>

</system.data>,
所以要使用EF必须在站点服务器安装mysql-connector-net启动程序(数据库所在的服务器不需要安装,只需要C#程序所运行的电脑需要安装)或者在应用的web.config文件里configuration节点下加上上面的配置
或者在应用所在机器的
C:\Windows\Microsoft.NET\Framework\v2.0.50727\Config\machine.config
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\machine.config
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\Config\machine.config
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config

文件里加上上面的配置。

需要注意的是:当机器已经装上了mysql-connector-net驱动的时候,再加这配置就会造成name重复而报错。

参考链接:http://www.cnblogs.com/vipsoft/archive/2012/11/08/2761121.html
http://blog.csdn.net/qqtt789632147/article/details/58115093
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: