Sembra che questi app.config
le righe sottostanti puntano direttamente alla fonte del problema:
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.9.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"></provider>
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.8.3.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"></provider>
Ciò significa che sulla macchina è installata una versione precedente di MySQL Connector .NET che fa riferimento anche all'interno del file di configurazione (6.8.3.0), quindi è necessario disinstallare prima le versioni precedenti di MySQL Connector .NET (rimuovere anche la stringa del provider EF). Quindi, assicurati i riferimenti di MySql.Data.dll
, MySql.Data.Entity.EF6.dll
&MySql.Web.dll
librerie referenziate all'ultima versione (6.9.9.0) e entityFramework
la sezione in app.config dovrebbe essere simile a questa:
<entityFramework>
<defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6" />
<providers>
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" />
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</providers>
</entityFramework>
Successivamente, pulisci e ricostruisci il progetto.
NB:puoi provare a sostituire le librerie MySQL in \Program Files\Microsoft Visual Studio [version number]\Common7\IDE\PrivateAssemblies
con quelli in \Program Files\MySQL\MySQL Connector Net 6.9.9\Assemblies\v4.5
se esistono ancora assembly di versioni precedenti.
Problema correlato:
MySQL Connector con EF6 in Visual Studio 2013