Del curso: .NET 5: Entity Framework Core Esencial
Accede al curso completo hoy mismo
Únete hoy para acceder a más de 24.900 cursos impartidos por expertos del sector.
Evitando errores con múltiples operaciones en paralelo - Tutorial de .NET Entity Framework Core
Del curso: .NET 5: Entity Framework Core Esencial
Evitando errores con múltiples operaciones en paralelo
Los contextos de base de datos de Entity Framework Core no son seguros para subprocesos. Eso significa que un solo contexto no se puede utilizar con diferentes hilos en operaciones paralelas. Vamos ver esto con un ejemplo. Tengo aquí mi aplicación de consola, LibraryManager, y aquí vamos a hacer algo prohibido. Tenemos aquí nuestro contexto, lo estamos creando aquí, using var context, ahora creamos aquí un array de autores, creamos una lista de tareas, de tasks, recorremos la lista de autores y por cada autor añadimos una tarea a nuestra lista de tareas usando un Task.Run y una lambda que lo que va a hacer es añadir el autor al contexto, persistir los cambios, luego eliminarlo y volver a persistir. Finalmente, al acabar el for, esperamos, con un await Task.WhenAll, que todas las tareas finalicen. ¿Qué está ocurriendo aquí? Pues aquí esta ocurriendo que estamos usando un solo contexto para ejecutar ene operaciones en paralelo, en este caso dos, porque nuestro array tiene solo dos…
Contenido
-
-
-
-
-
(Bloqueado)
Tiempo de vida de un contexto1 min 14 s
-
(Bloqueado)
Contextos en una aplicación de consola1 min 41 s
-
Contextos en ASP.NET Core4 min 52 s
-
(Bloqueado)
Contextos en Blazor3 min 32 s
-
(Bloqueado)
Contextos en aplicaciones de escritorio3 min 11 s
-
(Bloqueado)
DBContext en tiempo de diseño4 min 29 s
-
(Bloqueado)
Evitando errores con múltiples operaciones en paralelo2 min 56 s
-
Operaciones asincrónicas en nuestro contexto4 min 17 s
-
(Bloqueado)
-
-
-
-
-
-
-
-