微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在DbProviderFactories.GetFactory期间,MySQL连接器失败

如何解决在DbProviderFactories.GetFactory期间,MySQL连接器失败

| 我在使用dotnet框架4的VB.NET类库中的Visual Studio 2010 SP1中使用MysqL .Net Connector版本6.3.6。MysqL.Data使用NuGet安装。这行代码失败:
Dim qdb = Common.DbProviderFactories.GetFactory(\"MysqLClient1\")
出现错误消息“无法找到或加载已注册的.Net Framework数据提供程序。” 如果我使用\“ MysqL.Data.MysqLClient \”进行调用
Dim qdb = Common.DbProviderFactories.GetFactory(\"MysqL.Data.MysqLClient\")
错误变为“无法找到请求的.Net Framework数据提供程序。可能未安装。” 在app.config中,我输入:
<?xml version=\"1.0\" encoding=\"utf-8\"?>
<configuration>
    <system.data>
        <DbProviderFactories>
            <remove invariant=\"MysqLClient1\" />
            <add name=\"MysqL Data Provider\" invariant=\"MysqLClient1\" description=\".Net Framework Data Provider for MysqL\" type=\"MysqL.Data.MysqLClient.MysqLClientFactory,MysqL.Data.MysqLClient\" />
        </DbProviderFactories>
    </system.data>
</configuration>
如何获得MysqL工厂?     

解决方法

要将DbProviderFactory用于MySql客户端,请在配置下面添加
<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.7.4.0,Culture=neutral,PublicKeyToken=c5687fc88969c44d\" />
    </DbProviderFactories>
</system.data>
代码用法
using (var conn = MySqlDBConnection.CreateConnection(connString))
{
    // TODO
}



public static DbConnection CreateConnection(string connString)
{
     DbProviderFactory factory = DbProviderFactories.GetFactory(\"MySql.Data.MySqlClient\");
     var conn = factory.CreateConnection();
     conn.ConnectionString = connString;
     return conn;
}
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。