En ADO.Net Entity Framework, tengo un objeto que tiene 4 referencias a otros objetos. Por alguna razón, cuando consulto esas referencias, dos de ellas se cargan automáticamente (como se esperaba) y dos de ellas siempre devuelven nulo.Referencias de Entity Framework que no se cargan automáticamente
Extrañamente, cuando yo manualmente piden las referencias para cargar, cargan solo dandy.
A modo de ejemplo:
if (account.HoldingEntity == null &&
account.HoldingEntityReference.EntityKey != null) {
account.HoldingEntityReference.Load();
account.HoldingEntity = account.HoldingEntityReference.Value;
}
La primera vez que comprobar el HoldingEntity
siempre es nula, sin embargo, la carga devolverá el HoldingEntity sin problema.
¿Alguna pista?
Gracias!
perfecto, que resolvió que, gracias! Supongo que lo que todavía no entiendo es, ¿por qué dos de las referencias se cargan automáticamente, y dos de ellas no? – gerrod
Eso no es del todo cierto (al menos a partir de EF 4, nunca he trabajado con EF 1). PUEDE especificar qué referencias desea cargar automáticamente (e inmediatamente), pero también puede confiar en la carga diferida para cargar según sea necesario. Sin embargo, la carga diferida parece estar rota incluso en EF 4, por lo que esta es probablemente la respuesta correcta desde una perspectiva práctica. Ver http://msdn.microsoft.com/en-us/library/bb896272.aspx –