sql >> Base de Datos >  >> RDS >> Mysql

No se puede crear el modelo de datos de la entidad:usando MySql y EF6

Acabo de tener la misma situación al intentar configurar el entorno de Visual Studio Professional 2017 con MySQL, ADO.NET (Database First) y EF6.

Nota:siga los pasos en el mismo orden.

  1. Desinstale/elimine "Connector/NET" y "MySQL for Visual Studio" si está instalado.

  2. Instale "MySQL para Visual Studio" v2.0.5 CTP (MySQL para Visual Studio ).Nota:Instale MySQL para Visual Studio antes que Connector/NET.

  3. Instale "Connector/NET" v6.9.10 (Connector/Net ).https://i.stack.imgur.com/XOT1I.jpg Nota:primero intenté usar Connector/NET v6.8, v6.10 y v8, pero ninguno funcionó con Visual Studio 2017 y ADO.Net. Aquí puede encontrar todas las versiones de Connector y compatibilidades con Visual IDE de Studio , pero hasta ahora esta lista es inexacta.

  4. Cree un nuevo proyecto de Visual Studio Professional 2017.

  5. Descargue e instale "EntityFramework" v6.2.0 a través de NuGet, yendo a la pestaña Proyecto/Administrar paquetes NuGet/Examinar -> Entity Framework.

  6. Agregue referencias a C:\Program Files (x86)\MySQL\Connector.NET 6.9.10\Assemblies\v4.5\MySql.Data.dll y C:\Program Files (x86)\MySQL\Connector.NET 6.9.10\Assemblies\v4.5\MySql.Data.Entity.EF6.dll; haciendo clic con el botón derecho en Referencias dentro del Explorador de soluciones y seleccionando Agregar referencia/Examinar -> botón Examinar.

  7. Agregue la información del proveedor MySQL EF6 dentro de App.config en los proveedores del marco de la entidad de la siguiente manera:

<entityFramework>
       <providers>
         <provider invariantName="MySql.Data.MySqlClient"
              type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" />
       </providers>
</entityFramework>
  1. Reconstruya el proyecto yendo a la pestaña Generar/Reconstruir nombre del proyecto.

Y eso es. VS2017 está listo para funcionar. Espero que esto funcione para todos, como lo hizo para mí hoy.

Referencias :

  1. No se puede crear el modelo de datos de la entidad con MySql y EF6

  2. No se encontró ningún proveedor de Entity Framework para el proveedor ADO.NET 'MySql.Data.MySqlClient'