Изглежда, че тези app.config
редовете по-долу сочат директно към източника на проблема:
<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>
Това означава, че на вашата машина е инсталирана предишна версия на MySQL Connector .NET, която също се позовава в конфигурационния файл (6.8.3.0), следователно първо трябва да деинсталирате предишната версия(и) на MySQL Connector .NET (също така да премахнете низа на доставчика на EF). След това се уверете, че препратките на MySql.Data.dll
, MySql.Data.Entity.EF6.dll
&MySql.Web.dll
библиотеки, които се препращат към последната версия (6.9.9.0) и entityFramework
секцията в app.config трябва да изглежда така:
<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>
След това почистете и изградете отново проекта.
NB:Можете да опитате да замените MySQL библиотеки в \Program Files\Microsoft Visual Studio [version number]\Common7\IDE\PrivateAssemblies
с тези в \Program Files\MySQL\MySQL Connector Net 6.9.9\Assemblies\v4.5
ако все още съществуват сборки от предишна версия.
Свързан проблем:
MySQL конектор с EF6 във Visual Studio 2013