No estoy seguro acerca de las Propiedades de navegación en EF 4, por lo que le pido amablemente una explicación.Cómo determinar si la Propiedad de navegación en Entity Framework está configurada sin cargar los registros relacionados
Imaginemos esta hipótesis:
A)
Tengo dos entidades A
y B
con una relación N a N (muchos a muchos) y árbol tabla en mi base de datos A
y B
y una tabla de enlace AB
con dos claves externas.
En este escenario, EF crea una propiedad de navegación, llámenos X
y también XReference
.
B)
Tengo dos entidades A
y B
con una relación 1 a N (uno a muchos) y dos tabla en mi base de datos A
y B
con una clave externa.
En este escenario EF crear una propiedad de navegación le llaman Y
pero no un YReference
.
Ahora vamos a echar el escenario A y B y tratar de averiguar si hay alguna referencia de A en B:
Mi código para el Escenario:
A):
bool isA = a.XReference.EntityKey != null;
no cargar registros B (correcto?)
B):
bool isA = a.B.Any(x => x.BId == AId);
hago registros de carga B
Mis preguntas:
- qué EF no crea un YReference y no puedo usar
EntityKey
propiedad en el escenario B. - En mi Código Escenario B , ¿Realmente no cargo ningún registro de B?
- ¿Conoces un mejor enfoque para ejecutar esta consulta rápidamente?
Gracias a todos por su ayuda, espero que yo era capaz de dejar en claro :-)
Hola, necesito usar las propiedades de navegación para ver si el contenido de A está en B. ¿Alguna idea? – GibboK