O truque para resolver isso foi:
- Adicione referências ao
MySql.Data
eMySql.Data.Entity
bibliotecas da versão correta (6.7.4.0 para .NET 4.5, no meu caso) para o projeto. - Editar
machine.config
com seu editor, execute como administrador e substitua todas as ocorrências da versão do MySQL6.6.5.0
por6.7.4.0
.
Para a segunda etapa, observe que existem vários
machine.config
arquivos, um para cada versão do framework (3.0, 3.5, 4.0) e arquitetura (32 bits, 64 bits). Observe também que o machine.config
arquivo para .NET 4.5 está na pasta .NET 4.0. Você pode encontrar o machine.config
arquivos em:E:
Se não houver referências ao MySQL no
machine.config
arquivo, você pode não ter instalado o MySQL for Visual Studio
. Faça isso ou adicione o seguinte ao app.config
arquivo do seu projeto:<system.data>
<DbProviderFactories>
<add name="MySQL Data Provider"
invariant="MySql.Data.MySqlClient"
description=".Net Framework Data Provider for MySQL"
type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.7.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
</DbProviderFactories>
</system.data>
Observe, no entanto, que quando você instala o
MySQL for Visual Studio
e adicione o snippet acima ao seu app.config
arquivo, então você receberá esta exceção: