Столкнулся с такой же проблемой. Вот как заработало без ошибок (linq тоже):
- Установил mysql connector .net с официального сайта
- Установил mysql for visual studio с официального сайта
- Через обозреватель серверов добавил соединение с бд
- Установил EntityFramework из NuGet
- Добавил в ссылки две dll'ки (MySql.Data и MySql.Data.EntityFramework) из папки, в которую устанавливали mysql connector. В моем случае "C:\Program Files (x86)\MySQL\MySQL Connector Net 8.0.20\Assemblies\v4.5.2"
- Закомментировал в App.config тэг entityFramework. Вероятно у вас там будет еще что-то. Просто добавьте в новую запись. Закомментировать или удалить надо всё что связано с SqlServer'ом
<!--<entityFramework>
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer"/>
</providers>
</entityFramework>-->
- Вместо него добавил это:
<entityFramework>
<defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.EntityFramework" />
<providers>
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.EntityFramework" />
</providers>
</entityFramework>
- Пересобрал проект (ctrl + shift + b)
- Создал ADO.NET DatabaseFirst. Указал соединение. Выбрал таблицы. Готово
Тестировалось на новом проекте
c# console app (.net framework). MySql.Data.Entity и прочие ссылки не добавлялись.
Вопросу уже год, но вероятно кому-то поможет.