SlideShare una empresa de Scribd logo
1 de 15
Entity Framework Core 3
Leandro Tuttini
MVP Developer Technologies
2
COMO OBTENERLO
Rediseño proveedor LINQ
REVISION DE LINQ
3
Rediseñado del proveedor LINQ para habilitar la conversión de más
patrones de consulta en SQL
 Generación de consultas eficientes en más casos
 Prevención de que las consultas ineficaces no se detecten
4
VERSIONES ANTERIORES
EF Core identificada qué partes de una
consulta se podían traducir a SQL y
ejecutaba el resto de la consulta en el
cliente. Este tipo de ejecución en el lado
cliente es una opción interesante en
algunas situaciones, pero en muchos otros
casos puede dar lugar a consultas
ineficaces.
REVISION DE LINQ
EVALUACION CLIENTE LIMITADA
EF Core 3
Se limita la evaluación de cliente para que
solo suceda en la proyección de nivel
superior.
Si se detecta expresiones que no se
pueden traducir, produce una excepción
en tiempo de ejecución
5
VERSIONES ANTERIORES
En ciertos casos se usa varias
instrucciones SQL.
Implementación compleja que produce
algunos comportamientos ineficaces.
EF CORE 3
Sino puede convertir una consulta LINQ
en una única instrucción SQL, se inicia
una excepción en tiempo de ejecución.
Capaz de traducir muchos de los
patrones comunes que solían generar
varias consultas en una sola consulta
con JOIN
REVISION DE LINQ
INSTRUCCIÓN DE SQL UNICA POR CONSULTA LINQ
6
INTERCEPTORES
Permiten interceptar operaciones antes o después de que sucedan.
7
COMPATIBILIDAD C# 8
SECUENCIAS ASINCRONICAS
Los resultados de la consulta asincrónica se exponen ahora mediante la nueva interfaz de
await foreach estándar y se pueden usar con IAsyncEnumerable<T>
8
COMPATIBILIDAD C# 8
TIPOS DE REFERENCIA NULLABLES
Las propiedades marcadas como de tipo string? se configurarán como opcionales
9
INGENIERIA INVERSA DE VISTAS
Crea automáticamente tipos de entidades sin clave cuando se invierten las vistas de bases
de datos de ingeniería
dotnet ef dbcontext scaffold “<connection string>" Microsoft.EntityFrameworkCore.SqlServer
10
ENTIDADES DEPENDIENTES COMPARTEN TABLA SON OPCIONALES
Si OrderDetails pertenece a Order o está asignado a la misma tabla explícitamente
 Sera posible agregar Order sin OrderDetails
 Todas las propiedades OrderDetails, salvo la clave principal, se asignarán a columnas que
aceptan valores NULL
Se establecerá OrderDetails en null si ninguna
de las propiedades necesarias tiene un valor
COMPATIBILIDAD COSMOS DB
11
Ventajas
 distribución global
 disponibilidad "AlwaysOn“
 escalabilidad elástica
 baja latencia
Los desarrolladores que están familiarizados con el modelo de programación de EF puedan
usar fácilmente Azure Cosmos DB como base de datos de aplicación
EF 6.3 en NET CORE
12
La versión más reciente de EF 6 se porta para que se ejecute en .NET Core 3.0
 Compatibilidad con .NET Core 3.0
 El paquete EntityFramework ahora tiene como destino .NET Standard 2.1 además de
.NET Framework 4.x.
 Esto significa que EF 6.3 es multiplataforma y se admite en otros sistemas operativos además de
Windows, como Linux y macOS
13
RESUMEN
14
PREGUNTAS
GRACIAS
15

Más contenido relacionado

Similar a Entity Framework Core 3

Mi lenguaje preferido- SQL
Mi lenguaje preferido- SQLMi lenguaje preferido- SQL
Mi lenguaje preferido- SQL
Franshezka
 
Ejb30 3
Ejb30 3 Ejb30 3
Ejb30 3
oscar
 
Introduccion A Linq 1205779028184546 5
Introduccion A Linq 1205779028184546 5Introduccion A Linq 1205779028184546 5
Introduccion A Linq 1205779028184546 5
google
 

Similar a Entity Framework Core 3 (20)

Introduccion a LINQ
Introduccion a LINQIntroduccion a LINQ
Introduccion a LINQ
 
LENGUAJE DE PROGRAMACION SQL
LENGUAJE DE PROGRAMACION SQLLENGUAJE DE PROGRAMACION SQL
LENGUAJE DE PROGRAMACION SQL
 
5-Unidad 2: Diseño de Vista-2.2 Para Web
5-Unidad 2: Diseño de Vista-2.2 Para Web5-Unidad 2: Diseño de Vista-2.2 Para Web
5-Unidad 2: Diseño de Vista-2.2 Para Web
 
Fundamentos de Sistemas de Base de Datos (Capítulo 9 y 10)
Fundamentos de Sistemas de Base de Datos (Capítulo 9 y 10)Fundamentos de Sistemas de Base de Datos (Capítulo 9 y 10)
Fundamentos de Sistemas de Base de Datos (Capítulo 9 y 10)
 
Udf eficientes
Udf eficientesUdf eficientes
Udf eficientes
 
PD1_7moA_TS3_JavierLogroño.pptx
PD1_7moA_TS3_JavierLogroño.pptxPD1_7moA_TS3_JavierLogroño.pptx
PD1_7moA_TS3_JavierLogroño.pptx
 
Mi lenguaje preferido- SQL
Mi lenguaje preferido- SQLMi lenguaje preferido- SQL
Mi lenguaje preferido- SQL
 
Ejb30 3
Ejb30 3 Ejb30 3
Ejb30 3
 
10-Unidad 3: Diseños de Vista-3.2 Usos Web Services
10-Unidad 3: Diseños de Vista-3.2 Usos Web Services10-Unidad 3: Diseños de Vista-3.2 Usos Web Services
10-Unidad 3: Diseños de Vista-3.2 Usos Web Services
 
MS SQL Server 2012 SP1 para desarrolladores
MS SQL Server 2012 SP1 para desarrolladoresMS SQL Server 2012 SP1 para desarrolladores
MS SQL Server 2012 SP1 para desarrolladores
 
Act4 screencast-bdatos cmch
Act4 screencast-bdatos cmchAct4 screencast-bdatos cmch
Act4 screencast-bdatos cmch
 
.Net Conf UY 2017: Un paseo por Azure Service Fabric
.Net Conf UY 2017: Un paseo por Azure Service Fabric.Net Conf UY 2017: Un paseo por Azure Service Fabric
.Net Conf UY 2017: Un paseo por Azure Service Fabric
 
Dprn3 u3 a1_guph
Dprn3 u3 a1_guphDprn3 u3 a1_guph
Dprn3 u3 a1_guph
 
Desarrollo de aplicasiones .net
Desarrollo de aplicasiones .netDesarrollo de aplicasiones .net
Desarrollo de aplicasiones .net
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
API WEB SQL ITParral
API WEB SQL ITParralAPI WEB SQL ITParral
API WEB SQL ITParral
 
Introduccion A Linq 1205779028184546 5
Introduccion A Linq 1205779028184546 5Introduccion A Linq 1205779028184546 5
Introduccion A Linq 1205779028184546 5
 
Arquitectura y diseño de aplicaciones Java EE
Arquitectura y diseño de aplicaciones Java EEArquitectura y diseño de aplicaciones Java EE
Arquitectura y diseño de aplicaciones Java EE
 
Presentacion base de datos Cesar Morales
Presentacion base de datos Cesar MoralesPresentacion base de datos Cesar Morales
Presentacion base de datos Cesar Morales
 
Para Flor :P
Para Flor :PPara Flor :P
Para Flor :P
 

Entity Framework Core 3

  • 1. Entity Framework Core 3 Leandro Tuttini MVP Developer Technologies
  • 3. Rediseño proveedor LINQ REVISION DE LINQ 3 Rediseñado del proveedor LINQ para habilitar la conversión de más patrones de consulta en SQL  Generación de consultas eficientes en más casos  Prevención de que las consultas ineficaces no se detecten
  • 4. 4 VERSIONES ANTERIORES EF Core identificada qué partes de una consulta se podían traducir a SQL y ejecutaba el resto de la consulta en el cliente. Este tipo de ejecución en el lado cliente es una opción interesante en algunas situaciones, pero en muchos otros casos puede dar lugar a consultas ineficaces. REVISION DE LINQ EVALUACION CLIENTE LIMITADA EF Core 3 Se limita la evaluación de cliente para que solo suceda en la proyección de nivel superior. Si se detecta expresiones que no se pueden traducir, produce una excepción en tiempo de ejecución
  • 5. 5 VERSIONES ANTERIORES En ciertos casos se usa varias instrucciones SQL. Implementación compleja que produce algunos comportamientos ineficaces. EF CORE 3 Sino puede convertir una consulta LINQ en una única instrucción SQL, se inicia una excepción en tiempo de ejecución. Capaz de traducir muchos de los patrones comunes que solían generar varias consultas en una sola consulta con JOIN REVISION DE LINQ INSTRUCCIÓN DE SQL UNICA POR CONSULTA LINQ
  • 6. 6 INTERCEPTORES Permiten interceptar operaciones antes o después de que sucedan.
  • 7. 7 COMPATIBILIDAD C# 8 SECUENCIAS ASINCRONICAS Los resultados de la consulta asincrónica se exponen ahora mediante la nueva interfaz de await foreach estándar y se pueden usar con IAsyncEnumerable<T>
  • 8. 8 COMPATIBILIDAD C# 8 TIPOS DE REFERENCIA NULLABLES Las propiedades marcadas como de tipo string? se configurarán como opcionales
  • 9. 9 INGENIERIA INVERSA DE VISTAS Crea automáticamente tipos de entidades sin clave cuando se invierten las vistas de bases de datos de ingeniería dotnet ef dbcontext scaffold “<connection string>" Microsoft.EntityFrameworkCore.SqlServer
  • 10. 10 ENTIDADES DEPENDIENTES COMPARTEN TABLA SON OPCIONALES Si OrderDetails pertenece a Order o está asignado a la misma tabla explícitamente  Sera posible agregar Order sin OrderDetails  Todas las propiedades OrderDetails, salvo la clave principal, se asignarán a columnas que aceptan valores NULL Se establecerá OrderDetails en null si ninguna de las propiedades necesarias tiene un valor
  • 11. COMPATIBILIDAD COSMOS DB 11 Ventajas  distribución global  disponibilidad "AlwaysOn“  escalabilidad elástica  baja latencia Los desarrolladores que están familiarizados con el modelo de programación de EF puedan usar fácilmente Azure Cosmos DB como base de datos de aplicación
  • 12. EF 6.3 en NET CORE 12 La versión más reciente de EF 6 se porta para que se ejecute en .NET Core 3.0  Compatibilidad con .NET Core 3.0  El paquete EntityFramework ahora tiene como destino .NET Standard 2.1 además de .NET Framework 4.x.  Esto significa que EF 6.3 es multiplataforma y se admite en otros sistemas operativos además de Windows, como Linux y macOS