Wygląda na to, że te app.config
linie poniżej wskazują bezpośrednio na źródło problemu:
<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>
Oznacza to, że na Twoim komputerze zainstalowano poprzednią wersję MySQL Connector .NET, która również odwołuje się do wewnętrznego pliku konfiguracyjnego (6.8.3.0), dlatego najpierw musisz odinstalować poprzednie wersje MySQL Connector .NET (również usunąć jego ciąg dostawcy EF). Następnie upewnij się, że odwołania do pliku MySql.Data.dll
, MySql.Data.Entity.EF6.dll
&MySql.Web.dll
biblioteki, do których odwołuje się najnowsza wersja (6.9.9.0) i entityFramework
sekcja w app.config powinna wyglądać tak:
<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>
Następnie wyczyść i odbuduj projekt.
Uwaga:Możesz spróbować zastąpić biblioteki MySQL w \Program Files\Microsoft Visual Studio [version number]\Common7\IDE\PrivateAssemblies
z tymi w \Program Files\MySQL\MySQL Connector Net 6.9.9\Assemblies\v4.5
jeśli zestawy poprzedniej wersji nadal istnieją.
Powiązany problem:
MySQL Connector z EF6 w Visual Studio 2013