for - entity framework mysql visual studio 2017
Usando MySQL con Entity Framework (11)
No puedo encontrar nada relevante sobre Entity Framework / MySQL en Google, así que espero que alguien lo sepa.
Echa un vistazo a mi post sobre este tema.
Esto no es sobre la EM y lo que quieren. Han creado un * sistema abierto para que los demás se conecten con ''proveedores'' - postgres y sqlite lo tienen - mysql es solo laggin ... pero, buenas noticias para los interesados, yo también estaba buscando esto y descubrí que el conector MySql / Net 6.0 lo tendrá ... puedes verlo aquí:
http://www.upfromthesky.com/blog/post/2009/03/24/MySql-Supports-the-Entity-Framework.aspx
MySQL está organizando un seminario web sobre EF en unos pocos días ... Mire aquí: http://www.mysql.com/news-and-events/web-seminars/display-204.html
edición: ese seminario web se encuentra ahora en http://www.mysql.com/news-and-events/on-demand-webinars/display-od-204.html
Necesitarías un proveedor de mapas para MySQL. Eso es algo adicional que el Entity Framework necesita para hacer que la magia suceda. Este blog habla sobre otros proveedores de mapas además del que suministra Microsoft. No he encontrado ninguna mención de MySQL.
No vi el enlace aquí, pero hay un conector .NET beta para MySql. Haga clic en "Development Releases" para descargar la versión 6.3.2 beta, que tiene integración EF4 / VS2010:
http://dev.mysql.com/downloads/connector/net/5.0.html#downloads
Se ha lanzado - Obtenga el conector MySQL para .Net v6.5 - esto tiene soporte para [Entity Framework]
Estuve esperando esto todo el tiempo, aunque el soporte es básico, funciona para la mayoría de los escenarios básicos de interacción db. También tiene la integración básica de Visual Studio.
ACTUALIZACIÓN http://dev.mysql.com/downloads/connector/net/ A partir de la versión 6.7, Connector / Net ya no incluirá MySQL para la integración de Visual Studio. Esa funcionalidad ahora está disponible en un producto separado llamado MySQL para Visual Studio disponible usando el instalador de MySQL para Windows (consulte http://dev.mysql.com/tech-resources/articles/mysql-installer-for-windows.html ).
Si está interesado en ejecutar Entity Framework con MySql en mono / linux / macos, esto podría ser útil https://iyalovoi.wordpress.com/2015/04/06/entity-framework-with-mysql-on-mac-os/
También puede consultar https://www.devart.com/dotconnect/mysql/
El conector de DevArt es compatible con EF y MySQL.
Tenga cuidado al usar el conector .net, el conector 6.6.5 tiene un error, no funciona para insertar valores de minúsculo como identidad, por ejemplo:
create table person(
Id tinyint unsigned primary key auto_increment,
Name varchar(30)
);
Si intentas insertar un objeto como este:
Person p;
p = new Person();
p.Name = ''Oware''
context.Person.Add(p);
context.SaveChanges();
Obtendrá una excepción de referencia nula:
Referencia a objeto no establecida como instancia de un objeto.:
en MySql.Data.Entity.ListFragment.WriteSql(StringBuilder sql)
en MySql.Data.Entity.SelectStatement.WriteSql(StringBuilder sql)
en MySql.Data.Entity.InsertStatement.WriteSql(StringBuilder sql)
en MySql.Data.Entity.SqlFragment.ToString()
en MySql.Data.Entity.InsertGenerator.GenerateSQL(DbCommandTree tree)
en MySql.Data.MySqlClient.MySqlProviderServices.CreateDbCommandDefinition(DbProviderManifest providerManifest, DbCommandTree commandTree)
en System.Data.Common.DbProviderServices.CreateCommandDefinition(DbCommandTree commandTree)
en System.Data.Common.DbProviderServices.CreateCommand(DbCommandTree commandTree)
en System.Data.Mapping.Update.Internal.UpdateTranslator.CreateCommand(DbModificationCommandTree commandTree)
en System.Data.Mapping.Update.Internal.DynamicUpdateCommand.CreateCommand(UpdateTranslator translator, Dictionary`2 identifierValues)
en System.Data.Mapping.Update.Internal.DynamicUpdateCommand.Execute(UpdateTranslator translator, EntityConnection connection, Dictionary`2 identifierValues, List`1 generatedValues)
en System.Data.Mapping.Update.Internal.UpdateTranslator.Update(IEntityStateManager stateManager, IEntityAdapter adapter)
en System.Data.EntityClient.EntityAdapter.Update(IEntityStateManager entityCache)
en System.Data.Objects.ObjectContext.SaveChanges(SaveOptions options)
en System.Data.Entity.Internal.InternalContext.SaveChanges()
en System.Data.Entity.Internal.LazyInternalContext.SaveChanges()
en System.Data.Entity.DbContext.SaveChanges()
Hasta ahora no he encontrado una solución, tuve que cambiar mi identidad diminuta a una identidad int sin firmar, esto resolvió el problema pero esta no es la solución correcta.
Si usa una versión anterior de Connector.net (yo usé 6.4.4) no tendrá este problema.
Si alguien sabe de la solución, por favor contácteme.
¡Aclamaciones!
Oware
Vintana
Claro que hay algo listo ahora. http://www.devart.com/products.html - es comercial aunque (tienes una versión de prueba de IIRC de 30 días). Se ganan la vida escribiendo proveedores, así que supongo que debería ser rápido y estable. Sé que las compañías realmente grandes usan su proveedor de Oracle en lugar de Orace y MS.
Este tutorial de MySQL muestra cómo generar y usar entidades EF como una fuente de datos para un control.