Entity Framework Core

Entity Framework Core

Entity Framework Core, es un asignador relacional de objetos (O/RM). Que ha sido examinado durante muchos años con .NET.

Entity Framework Core; funciona, extrayendo las bases de datos que el usuario necesita con SQL.

Entity Framework Core 6.0 es la siguiente versión después de EF Core 5.0 y fue lanzada en noviembre de 2021 al mismo tiempo que .NET 6.

Plataformas admitidas

  • Entity Framework Core 6.0, necesita de .NET 6.
  • Entity Framework Core 6.0 no tiene como destino ninguna versión de .NET Standard; y no se ejecuta en el .NET Framework.
  • Entity Framework Core 6.0 se incluirá con .NET 6 como una versión de soporte técnico a largo plazo (LTS).

Diferencias entre Entity Framework y Entity Framework Core

La diferencia radica, en que .NET Core es una versión más ligera y con mayor rendimiento que la versión .NET Framework. Además, su consumo de recursos es menor, es de código abierto, multiplataforma y funciona con Windows, Linux o Mac.

Entity Framework Core es una nueva plataforma, no es una versión nueva o mejorada de la anterior Entity Framework.

Cambios para resaltar en Entity Framework Core 6.0

  • Los dependientes opcionales anidados, que comparten una tabla y no cuentan con las propiedades necesarias, no se pueden guardar.
  • Cambiar el propietario de una entidad, en propiedad, ahora inicia una excepción.
  • Cosmos: Los tipos de entidad relacionados, se detectan como propiedad.   
  • SQLite: Las conexiones se pueden agrupar.
  • Las relaciones de varios a varios, sin entidades de combinación asignadas, ahora están con scaffolding.
  • Se ha limpiado la asignación entre los valores, DeleteBehavior y ON DELETE.     
  • La base de datos en memoria, permite, que las propiedades necesarias no contengan valores NULL.
  • Se ha quitado la última cláusula ORDER BY al realizar la combinación en colecciones.
  • DbSet ya no implementa, IAsyncEnumerab.
  • El tipo de entidad devuelta de TVF, también se asigna a una tabla de manera predeterminada.
  • La exclusividad del nombre de la restricción CHECK, ahora está validada.
  • Se han agregado interfaces de metadatos de IReadOnly y se han quitado métodos de extensión.
  • IExecutionStrategy es ahora un servicio singleton.
  • SQL Server: Más errores se consideran transitorios.
  • Cosmos: Se escapan más caracteres en valores ‘id’.
  • Algunos servicios singleton, ahora tienen ámbito.
  • Nueva API de almacenamiento en caché para extensiones que agregan o reemplazan servicios.
  • Nuevo procedimiento de inicialización de modelos, en tiempo de diseño e instantáneas.
  • DbFunctionBuilder.HasSchema(null), invalida, [DbFunction (Schema = “schema”)].
  • Las navegaciones inicializadas previamente se reemplazan por valores de las consultas de bases de datos.
  • Los valores de cadena de enumeración desconocidos de la base de datos, no se convierten al valor predeterminado de enumeración cuando se consulta.
  • DbFunctionBuilder.HasTranslation ahora proporciona los argumentos de función como IReadOnlyList, en lugar de IReadOnlyCollection.
  • La asignación de tabla predeterminada no se quita, cuando la entidad se asigna a una función con valores de tabla.

Cambios importantes

  1. Con la nueva versión de Entity Framework Core 6.0, se pueden crear tablas temporales apoyándose en las tablas temporales ya creadas, en los datos históricos y en la restauración de los datos.
  • Modelos compilados: Con los modelos compilados, se genera una optimización del arranque de la aplicación.
  • Agrupación de migraciones: Con Entity Framework Core se incorporó una nueva forma de actualizar los esquemas, a través, de agrupaciones de migraciones. Una agrupación de migración es un pequeño código que se ejecuta en la base de datos.
  • Texto SQL server más flexible: Funciona añadiendo un elemento JSON a la base de datos.

Ventajas de Entity Framework Core 6.0

  • Es ligero.
  • Multiplataforma.
  • Similitud con Entity Framework.
  • Flexibilidad para establecer objetos.
  • Fácil mantenimiento del código.

Desventajas de Entity Framework Core 6.0

  • Dependencia de una base sólida de LINQ.
  • Menor rendimiento de la consulta de módulos.
  • No es posible concatenar el SQL.

Si quieres dominar Entity Framework. Adquiere nuestro curso profesional, mira la información completa aquí:

Te puede interesar...

Deja un comentario