versiones-entity-framework

Historia y versiones de Entity Framework

  • 3 min

Entity Framework ha evolucionado mucho desde su lanzamiento en 2008, por que vamos a ver brevemente su historia.

Cada versión ha introducido mejoras, sobre todo en cuando a optimización, rendimiento, y compatibildiad con bases de datos.

Para hacer más “lioso” el tema, además, Entity Framework tiene dos versiones principales: EF6 y EF Core.

  • Entity Framework 6: Es la versión clásica de Entity Framework, diseñada para .NET Framework.
  • Entity Framework Core: Es la versión moderna y ligera de Entity Framework, diseñada para .NET 5+ (o superior).

Si en algún momento has usado Entity Framework (sin Core), no tienen nada que ver.

Comparten el nombre y tienen similitudes en la forma de trabajo, pero EF Core es mucho más moderno y rápido.

Comparación EF y EF Core

Empezamos viendo la comparación entre EF y EF Core.

CaracterísticaEntity FrameworkEntity Framework Core
Compatibilidad de plataforma🟠Solo Windows🟢Multiplataforma
.NET.NET Framework.NET 5+
Rendimiento🔴Menos optimizado🟢Mucho mejor
Migraciones🟠Sí, pero menos flexibles🟢Si
Bases de datos soportadas🟠SQL Server🟢Múltiples bases de datos

Entity Framework es la versión antigüa. La versión 6 es la última versión (anzada en 2013) y se ha mantenido como la opción principal para aplicaciones .NET Framework.

EF6 es compatible solo con .NET Framework y no funciona en .NET Core o .NET 5/6/7+.

Es un producto maduro y estabilidad. EF6 ha sido ampliamente probada y utilizada en proyectos empresariales.

Soporte a largo plazo: Aunque EF6 ya no recibe nuevas características, sigue recibiendo actualizaciones de seguridad y correcciones de errores.

Entity Framework Core es la versión moderna. Fue lanzada en 2016 junto con .NET Core y es la opción recomendada para aplicaciones modernas.

Una reescritura completa de Entity Framework, diseñada para ser más ligera, modular y compatible con las nuevas versiones de .NET.

EF Core es compatible con .NET Core, .NET 5+ y .NET Framework (aunque con algunas limitaciones en este último).

  • Compatibilidad multiplataforma: EF Core funciona en Windows, Linux y macOS.
  • Mutlibase de datos, incluso para para bases de datos no relacionales
  • EF Core está diseñado para ser más ligero y modular, lo que permite incluir solo las funcionalidades necesarias.
  • Nuevas características: EF Core introduce funcionalidades modernas Consultas globales (Global Query Filters), Tablas temporales (Temporal Tables),
  • Soporte mejorado para migraciones

En este curso nos centraremos en .NET Entity Framework Core (incluso cuando no ponga explícitamente el Core)