我正在使用Entity Framework 5.0和MySQL 6.8.3
我已经将MySql.Data.dll和MySql.Data.Entity.dll都复制到Output文件夹。 在我的电脑上,我将以下代码添加到App.Config:
<system.data>
<DbProviderFactories>
<remove invariant="MySql.Data.MySqlClient"/>
<add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data"/>
</DbProviderFactories>
</system.data>
它工作正常,但是当我将它带到另一台PC时,我必须删除该配置以使其工作。如何在不添加或删除该配置的情况下使其工作?
答案 0 :(得分:0)
我已经弄清楚了我的问题。此问题是由于项目和Connector / Net中的MySQL冲突造成的。
对于任何人都有同样的问题,请在您的提供商配置中具体说明MySQL dll的版本:
<system.data>
<DbProviderFactories>
<remove invariant="MySql.Data.MySqlClient"/>
<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.8.3.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"/>
</DbProviderFactories>
</system.data>
此版本应与项目引用的dll相同。