tutorial transaction strategies net homepage framework first example code c# entity-framework entity-framework-6 queryinterceptor

c# - transaction - ¿Por qué se salta IDbCommandTreeInterceptor en la segunda consulta?



entity framework strategies (1)

según los comentarios de las fuentes, este es el comportamiento esperado

Los árboles de comandos se crean para las consultas y los comandos de inserción / actualización / eliminación. Sin embargo, los árboles de comandos de consulta se almacenan en caché por modelo, lo que significa que la creación del árbol de comandos solo ocurre la primera vez que se ejecuta una consulta y esta notificación solo ocurrirá en ese momento.

Como consecuencia, el resultado de su interceptor no puede depender de los datos.

Usando el marco de la entidad, he implementado la eliminación de datos blandos y la restricción del nivel de datos con IDbCommandTreeInterceptor. Para la primera consulta que usa el contexto, el interceptor recibe un golpe. Pero al intentarlo de nuevo (refrescando el navegador), el interceptor se salta. He comprobado si los datos se almacenan en caché mediante el cambio de algunos datos mediante el uso de SQL Server Management Studio. Los cambios se reflejan pero el interceptor todavía se salta. ¿Qué podría estar causando que esto suceda?