DbProviderFactory失败了

时间:2013-10-16 21:53:05

标签: c# mysql ado.net database-connection

在我的电脑上安装了C#,Framework 4.5和MySqL连接器

如果我试过

using MySql.Data.MySqlClient;
...
MySqlConnection tst = new MySqlConnection();

一切正常,但现在

  

DbProviderFactory factory =   DbProviderFactories.GetFactory( “MySql.Data.MySqlClient”);

引发错误:

无法找到请求的.Net Framework数据提供程序。它可能没有安装。

不明白!?

3 个答案:

答案 0 :(得分:2)

您的配置文件是否有条目

  <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.6.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
    </DbProviderFactories>
  </system.data>

答案 1 :(得分:0)

是的,实际上如果我在.config中添加DbProvider,现在我得到:

Failed to find or load the registered .Net Framework Data Provider.
哇,装配地狱? ;)

答案 2 :(得分:0)

我与DbFactory的Firebird连接有相同的问题。问题在于,仅将DbProviderFactories部分添加到配置文件中是不够的,但是您还必须在修改了该配置的项目中添加适当的NuGet包。