gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-11-30 23:37:44 25 4
gpt4 key购买 nike

我在使用 dotnet 框架 4 的 VB.NET 类库中的 Visual Studio 2010 SP1 中使用 MySQL .Net 连接器版本 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 工厂?

最佳答案

要为 MySql 客户端使用 DbProviderFactory,请添加以下配置

<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;
}

关于MySQL 连接器在 DbProviderFactories.GetFactory 期间失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6138993/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com