Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Não é possível criar o modelo de dados de entidade - usando MySql e EF6


Acabei de ter a mesma situação ao tentar configurar o ambiente Visual Studio Professional 2017 com MySQL, ADO.NET (Database First) e EF6.

Nota:Siga os passos na mesma ordem.

  1. Desinstale/remova "Connector/NET" e "MySQL for Visual Studio" se instalado.

  2. Instale o "MySQL para Visual Studio" v2.0.5 CTP (MySQL para Visual Studio ).Observação:Instale o MySQL para Visual Studio antes do Connector/NET.

  3. Instale "Connector/NET" v6.9.10 (Connector/Net ).https://i.stack.imgur.com/XOT1I.jpg Observação:tentei usar o Connector/NET v6.8, v6.10 e v8 primeiro, mas nenhum deles funcionou com o Visual Studio 2017 e o ADO.Net. Aqui você pode encontrar todas as versões de conectores e compatibilidades com Visual IDEs de estúdio , mas até agora esta lista é imprecisa.

  4. Crie um novo projeto do Visual Studio Professional 2017.

  5. Baixe e instale o "EntityFramework" v6.2.0 por meio do NuGet, acessando a guia Projeto/Gerenciar pacotes NuGet/Procurar -> Entity Framework.

  6. Adicionar referências a C:\Program Files (x86)\MySQL\Connector.NET 6.9.10\Assemblies\v4.5\MySql.Data.dll eC:\Program Files (x86)\MySQL\Connector.NET 6.9.10\Assemblies\v4.5\MySql.Data.Entity.EF6.dll; clicando com o botão direito do mouse em References dentro do Solution Explorer e selecionando Add Reference/Browse ->Browse button.

  7. Adicione as informações do provedor MySQL EF6 dentro do App.config em provedores de estrutura de entidade da seguinte forma:
<entityFramework>
       <providers>
         <provider invariantName="MySql.Data.MySqlClient"
              type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" />
       </providers>
</entityFramework>
  1. Reconstrua o projeto acessando a guia Build/Rebuild ProjectName.

E é isso. O VS2017 está pronto para ser usado. Espero que isso funcione para todos, como funcionou para mim hoje.

Referências :

  1. Não é possível criar modelo de dados de entidade - usando MySql e EF6

  2. Nenhum provedor do Entity Framework encontrado para o provedor ADO.NET 'MySql.Data.MySqlClient'