ver - modelo mysql




No se puede crear el modelo de datos de entidad-usando MySql y EF6 (8)

Estoy tratando de agregar un modelo de entidad edmx a mi C # / Proyecto web en Visual Studio 2013. Mi problema es que el archivo no se creó.

Hago los siguientes pasos:

  1. Dale un nombre al artículo
  2. Elija 'EF Designer de la base de datos'
  3. Elija la conexión del menú desplegable (localhost) que ya probó con éxito al conectarse a MySQL databse
  4. La opción "Guardar configuración de conexión en webc.config como" está marcada
  5. Hago clic en 'Siguiente' Y la ventana desapareció y vuelvo a la ventana de código

No se crea un archivo edmx. (aunque funciona con SQL Server, pero no para MySQL)

Tengo instalado Entity Framework 6.1.2 , MySql.Data , MySql.Data.Entities , MySql.Data.Entity , MySql.Web , todo instalado.

También reconstruí el proyecto antes de intentar agregar un archivo de modelo de entidad.

He instalado el último paquete MySQL con el último .NET connector .

Ejecución: Visual Studio 2013 en Windows 7.

¿Alguna idea de como resolver esto?


Cambié mi archivo web.config de:

<provider invariantName = "MySql.Data.MySqlClient" type = "MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.EntityFramework, Version = 8.0.11.0, Culture = neutral, PublicKeyToken = c5687fc88969c44d" /

A:

<provider invariantName = "MySql.Data.MySqlClient" type = "MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6"> </provider>


Conozco la solución

Nuget instala la versión de borde de los paquetes MySql.Data. *, Mientras que probablemente tenga una versión anterior del conector (en mi caso, los paquetes eran v. 6.9.6 y Connector era 6.9.5). Esto llega al punto en que tiene una discrepancia de versión.

Tenga en cuenta que si usa Install-Package MySql.Data.Entities en NuGet obtendrá una versión aún más antigua como 6.8.3, por lo que debe agregar las referencias usted mismo y vigilar cuál está tratando de agregar a su solución.


Me encontré con este problema al actualizar la versión 6 de MySql a la versión 8.0.17.0. Luché con esto durante casi dos días probando todos los remedios antiguos hasta que encontré este artículo . Si está utilizando EF6 y la versión 8.0. de MySql, según esta publicación:

MySql.Data.Entity 6.10.7 no es compatible con MySql.Data 8.0.11.

Oracle renombró el paquete a MySql.Data.EntityFramework para v8.x. Debe desinstalar MySql.Data.Entity e instalar MySql.Data.EntityFramework.

Una vez que hice este simple paso, la conexión de datos comenzó a funcionar y el diseñador EDMX comenzó a funcionar también (aunque tengo que volver a Visual Studio 2017 porque las Herramientas de diseño para VS 2019 no estaban disponibles en el momento de esta publicación).

Espero que esta nueva publicación los ayude a algunos de ustedes.


Otra cosa para probar:

---> instala el entityframework 6.2.0 a través de nuget.

---> Verifique en su archivo web.config / app.config que tiene el proveedor System.Data.SqlServerCe.4.0 . si no está instalado, instálelo a través de nuget, exactamente la misma versión que el marco de la entidad instalado previamente (6.2.0 en este caso).

---> luego agregue las referencias: (en este caso desde el conector / NET versión 6.9.10) C:\Program Files (x86)\MySQL\Connector.NET 6.9\Assemblies\v4.5\MySql.Data.dll y C:\Program Files (x86)\MySQL\Connector.NET 6.9\Assemblies\v4.5\MySql.Data.Entity.EF6.dll y reconstruir.

---> intente agregar este proveedor también: <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" /> reconstruir, nuevamente.

---> y finalmente, intente agregar el archivo .edmx con una nueva conexión.

Esto funcionó en mi caso donde instalé VS2017 y MySQL en una computadora portátil nueva, y tuve el mismo problema.


Puedes hacer esta solución:

  1. Agregue un nuevo modelo de EF vacío.
  2. En el diseño emdx, haga clic y actualice el modelo desde la base de datos.
  3. elija su base de datos y se generará el modelo.

Eso es trabajo para mí :)


Resolví este problema siguiendo algunos pasos a continuación:

  1. Desinstale MySql.Data.Entities de Nuget mediante el comando a continuación en la Consola del Administrador de paquetes: Uninstall-Package MySql.Data.Entities

  2. Agregue referencia de proyecto a la última MySql.Data.Entity.EF6.dll de MySql.Data.Entity.EF6.dll desde la ruta de instalación de su conector MySql.Data.Entity.EF6.dll en: C:\Program Files (x86)\MySQL\MySQL Connector Net 6.9.8\Assemblies\v4.5


Tomando sugerencias sobre versiones NuGet de otras respuestas. .Data este problema eliminando .Data y Data.Entitiy.EF6 instalados por Nuget.

Luego haga clic derecho en Referencias y busque:

C:\Program Files (x86)\MySQL\Connector.NET 6.9\Assemblies\v4.5\MySql.Data.dll y C:\Program Files (x86)\MySQL\Connector.NET 6.9\Assemblies\v4.5\MySql.Data.Entity.EF6.dll

Luego pude completar el asistente ADO.Net, con los modelos .edmx.


Tuve el mismo problema al usar MySQL Connector 6.9.8.0. Si bien todas mis versiones coincidían, esto todavía falló. Instalé una nueva versión de Visual Studio DESPUÉS del conector MySQL (de 2010 a 2013). Para mí, la solución fue desinstalar el Conector MySQL para NET y luego reinstalarlo (Exactamente la misma versión). Luego reinicie Visual Studio.

Parece que esta es otra versión del mismo problema.





ado.net-entity-data-model