未能加载Connector/NET :: v6.7.4

//从*.config文件获取连接字符串和提供程序
            string dp = ConfigurationManager.AppSettings["provider"];
            string cnStr = ConfigurationManager.AppSettings["cnStr"];
//得到工厂提供程序
            DbProviderFactory df = DbProviderFactories.GetFactory(dp);

  编写上述代码时出错,报的错误为“未能加载文件或程序集“MySql.Data, Version=6.6.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d””。发生上述错误的原因是自己新安装的MySql版本为6.7.4.0,而被加载的MySql版本为6.6.5.0。

  因此,需要修改配置文件。

  方法一:需要修改machine.config文件(C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config)。

  修改<DbProviderFactories></ DbProviderFactories>中的内容,加入<add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient.New" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.7.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />

  方法二:需要修改本程序的App.config文件

  例如修改结果如下:

<?xml version="1.0"?>
<configuration>
  <system.data>
    <DbProviderFactories>
      <add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient.New" 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>
  <appSettings>
    <!--哪个提供程序-->
    <add key="provider" value="MySql.Data.MySqlClient.New"/>
    <!--哪个连接字符串-->
    <add key="cnStr" value="server=localhost;User Id=root;Persist Security Info=True;database=autolot"/>
  </appSettings>
  <startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup></configuration>

 

 

posted @ 2013-10-11 10:26  从心  阅读(950)  评论(0)    收藏  举报