He leído que los proxies se usan cuando necesitamos usar Lazy Loading y Change Tracking. En otras palabras, para usar Lazy Loading debo habilitar proxies.EF 4 - Lazy Loading Sin Proxies
Hasta ahora todo bien.
el punto es que puedo usar el código de abajo para configurar el contexto de no usar un proxy e incluso todavía utilizar la carga diferida.
ctx = new SchoolEntities();
ctx.ContextOptions.ProxyCreationEnabled = false;
ctx.ContextOptions.LazyLoadingEnabled = true;
¿La propiedad ProxyCreationEnabled está relacionada solo con el proxy de seguimiento de cambios o me falta algo?
¿Podría alguien explicar esto con algunos detalles?
Gracias!
EDIT1
no estoy usando POCO/DbContext. Estoy usando un modelo regular de EF de edmx con ObjectContext. Sé la importancia de los poderes para las entidades de POCO en lo que respecta al cambio de seguimiento y la carga diferida. ¿Por qué usar Proxies en un modelo regular de EDMX?
voy a mantener en mente que 'EntityObject' es una "entidad legado" :) ¿Cuándo se empieza a marcar con el atributo' '[obsoleto]? – Slauma
Buena pregunta. Lo cual no puedo responder porque no sé si sucederá alguna vez. Pero lo hemos discutido. –
@ajcvickers, gracias por su respuesta, pero, a menos que no entienda correctamente, creo que se perdió la parte más importante de la pregunta: si estoy usando ObjectContext (y no DbContext), ¿para qué se usa ProxyCreationEnabled? Para habilitar Change Track? Cómo he indicado antes, esto no es para la carga lenta, entonces, ¿para qué sirve? – outlookrperson