¿Qué es Entity Framework Core?

Es la evolución del ORM creado por Microsoft. Ef Core 2 esta compuesto por un conjunto de APIs que permiten el acceso a datos en una aplicación, es cross-platform, esta desarrollada con practicas de desarrollo modernas y es open source. Un ORM facilita el mapeo de clases del dominio de nuestra aplicación con la base de datos aumentando la productividad del desarrollador. 

La primera versión de Entity Framework Core aparece en Junio del año 2016 (EF Core 1.0). La segunda versión aparece un año mas tarde, en Agosto del año 2017 (EF Core 2.0), y finalmente se espera que la versión 2.1 salga dentro del primer semestre de este año 2018. 

Como funciona Entity Framework

EF gestiona toda la interacción que realicemos con la base de datos. A través de las APIs que nos ofrece EF, es posible definir el modelo de datos a partir de nuestras clases de dominio, escribir y ejecutar consultas LINQ; y guardar nuestros cambios en la base de datos.

La función de las APIs de EF es mantener un estado de los objetos, generar las consultas SQL necesarias para guardar u obtener datos en la base de datos y luego mapear los resultados en nuestras clases de dominio.

Creación del modelo de datos

EF Core nos brinda dos opciones para la creación de nuestro modelo de datos

  • Cuando arrancamos un nuevo proyecto definiremos nuestra clases de dominio y a partir de ellas crearemos nuestro contexto para la creación del modelo de datos.
  • Al arrancar un proyecto con una base de datos existente, es posible aplicar ingeniería inversa a una o mas tablas. Creamos nuestro contexto a partir de esas y nuevas (de ser necesario) clases de dominio para la creación del nuevo modelo de datos.

Proveedores de datos soportados por Entity Framework Core 2

EF Core 2 permite conectar con distintos proveedores de datos, ya sea desarrollados por el propio Microsoft o por terceros.

La siguiente lista de proveedores de datos es soportada por Entity Framework Core 2

  • SQL Server
  • SQL Server Compact
  • SQLite
  • InMemory
  • MySQL
  • Oracle
  • PostgreSQL
  • MyCat
  • Firebird
  • IBM Data Server DB2

Tipo de aplicaciones

Para utilizar Entity Framework Core 2 en el nuevo ecosistema de Microsft, es necesario desarrollar aplicaciones que corran bajo el framework .NET Core 2.X.

Entre este tipo de aplicaciones, podemos encontrar las siguientes

  • ASP.NET Core
    • Aplicaciones web
    • Web APIs
  • Librerias
  • Servicios
  • Aplicaciones de consola
  • Docker

Características que no están incluidas en Entity Framework Core 2.0

Ef Core fue reescrito por Microsoft y algunas de las características que estaban presentes en versiones anteriores, como por ejemplo Entity Framework 6, ya no están incluidas en esta versión.

Repasaremos cual de las características mas importantes no están incluidas

  • Lazy loading: esta característica estará disponible en una futura versión por lo que necesitamos usar eager loading utilizando el método de extensión Include().
  • Relación mucho a muchos (many-to-many): esta característica también estará disponible en el futuro por lo que necesitamos establecer una nueva entidad en el medio de esta relación.
  • Guardar datos en las migraciones (seed)
  • Se quitaron por completo las siguientes características:
    • Inicializadores de base de datos (Database initilializers)
    • Migraciones automáticas (Automatic migrations)
    • Model first
    • Validaciones Data Annotations

Descargar

Para descargar e instalar el sdk de Entity Framework Core 2 ingrese en el siguiente enlace

¡Si te gusto el articulo, compártelo con tus contactos en las redes sociales!

Escribe una respuesta a este comentario

avatar
500
  Subscribe  
Notificar de