2010-12-03 15 views
8

Estamos teniendo un problema pruebas Entity Framework 4.Cómo detener marco de la entidad de almacenamiento en caché

Hemos desplegado un servicio WCF que implementa un contexto de datos EF. Todo funciona bien hasta que modifiquemos los datos usando SQL server studio.

¿Hay alguna forma de detener el almacenamiento en memoria caché de EF de nuestros resultados o hay alguna forma de activar cargas ansiosas?

Saludos,

James

+0

¿Quiere decir que se carga entidades y de alguna manera no se vuelven a cargar desde la base de datos automáticamente? ¿O quiere decir que su contexto de datos no obtiene datos de la base de datos cada vez que carga un objeto? ¿Puedes mostrar un ejemplo de lo que no funciona para ti? – mlibby

+0

Hola, quiero decir que nuestro contexto de datos no obtiene datos de la base de datos cada vez que cargamos un objeto. Nos gustaría, si es posible? – Zack

Respuesta

7

En la hoja de propiedades para su modelo, se puede establecer la propiedad Lazy Loading Enabled.

alt text

Mediante código, se puede controlar la carga diferida con la propiedad ObjectContextOptions.LazyLoadingEnabled:

context.ContextOptions.LazyLoadingEnabled = false; 
+0

¡Excelente! - ¡Saludos! – Zack

4

En EF4 tuve que usar esto en su lugar:

_context.Configuration.LazyLoadingEnabled = false; 
+0

Todavía funciona en EF6. –

Cuestiones relacionadas