Этот вопрос и ответ был очень полезен для меня при переносе более крупного проекта EF с SQL на mySQL, поэтому я подумал, что добавлю свои заметки и надеюсь, что они будут полезны:
Как указано в имени строки подключения должен соответствовать имени класса, который расширяет System.Data.Entity.DbContext.
Кажется, до сих пор нет способа создавать таблицы в EF с использованием коннектора mySQL, но вы можете использовать и изменять сценарии создания SQL для генерации таблиц mySQL. Самым простым способом, который я нашел для этого, было закомментировать и отключить функцию OnModelCreating расширенного DbContext в зависимости от того, нужен ли код для воссоздания таблиц. Если я обнаружу, что делаю это чаще, я планирую решить эту проблему с помощью внедрения зависимостей и иметь отдельные классы, основанные на конфигурации MySQL или MSSQL.
Я обнаружил, что проще убедиться в том, что в комплектах и серверах разработчика был правильный соединитель MySQL .dll, упакованный в выпуске, чем связываться с DbFactoryProviders в webconfig. Получение правильной упаковки в пакете сборки проекта / решения означало, что мне нужны были только строки строки подключения, а не строки DbFactoryProviders, которые, как мне показалось, было трудно работать согласованно на нескольких машинах.
Мне нужно было изменить чувствительность регистра идентификатора mySQL от 0 до 1. Без этого параметра подключенный EF SQL не смог найти таблицы, которые были там из-за смешанных имен вариантов моих объектов по сравнению с таблицы с фиксированным регистром, которые создает mySQL.