ASP.NET 5 / MVC 6 con base de datos MySQL

asp.net-core entity-framework-core mysql mysql-connector

Pregunta

Tengo planes de construir un sitio web de MVC 6 que se alojará en Linux, y actualmente estoy en la fase de prueba inicial para ver cómo funcionan los nuevos ASP.NET 5 (vNext) y MVC 6 y si puedo implementar todo en Linux.

Mi sitio web debe hacer uso de una base de datos y, como se implementará en Linux, obviamente no puedo usar SQL Server. Me gustaría mucho usar MySQL pero tal vez hay otras alternativas? Digamos que por ahora necesito MySQL, a menos que no sea posible.

Me doy cuenta de que todo esto todavía está en fase beta y no está listo para la producción, pero solo estoy buscando hacer la configuración inicial para asegurarme de que todo esté funcionando antes de comenzar a trabajar en el sitio web real. No puedo hacer eso si no hay conexión de base de datos ...

Pronto descubrí que todavía no hay MySQL Connector para Entity Framework 7, que es lo que usa MVC 6. ¿Esto significa que estoy fuera de suerte y tendré que esperar hasta que un nuevo conector MySQL salga con soporte para EF7? ¿O puedo volver a EF6 en un sitio web de MVC 6, que sea compatible con MySQL? Intenté agregar dependencias al EF6, pero hay tantas dependencias en la plantilla MVC 6 predeterminada que todas hacen referencia al EF7. Estoy completamente perdido y no tengo idea de cómo abordar esto, si es que es posible.

Para resumir:

  • ¿Puedo usar EF 7 con MySQL o tengo que esperar hasta que un nuevo MySQL Connector admita esto?
  • ¿Puedo recurrir a EF6 y seguir utilizando MVC 6 e implementarlo en Linux (utilizando Mono)? Si es así, ¿cómo puedo configurar esto?
  • Si todo falla, ¿puedo usar una base de datos diferente con MVC 6 en Linux / Mono?

Respuesta popular

Soy consciente de 2 soluciones para usted. SQLite y Postgres. Desafortunadamente, ninguno de ellos es adecuado para una aplicación de producción a partir de hoy . Ambos proyectos están en desarrollo activo. SQL Server sigue siendo el DB mejor soportado en EF 7. Esto debería funcionar desde Mono, pero desafortunadamente requeriría que use un servidor Windows (o SQL Azure).

SQLite

introduzca la descripción de la imagen aquí

No es ideal para servidores, pero aún funciona : El EntityFramework.Sqlite está en desarrollo para EF 7. Puedes obtener beta1 de Nuget.org. Esto debería funcionar en Mono.

PostgreSQL

Npgsql.EntityFrame

Definitivamente anterior al lanzamiento, pero se está construyendo : Además, Postgres ( npgsql ) se está desarrollando en el proveedor EF7. Su código es onGitHub y puede obtener un paquete de prelanzamiento de su fuente MyGet (agregue https://www.myget.org/F/npgsql-unstable a sus fuentes de Nuget).




Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué