Pregunta

Estoy intentando realizar una tarea simple de crear una base de datos con 2 tablas con una relación 1: *.

En una tabla (Foos) tengo

Id
...
...

En los otros (Bars) tengo

Id
FooId
...
...
...

Creé una relación de clave externa de Barras a Foos con la Tabla de claves foriegn, mientras que las Barras apuntaban a la columna FooId, y la tabla de claves primarias eran Foos que apuntaban a la columna de Id.

Luego creé mi modelo de datos de entidad ADO.NET y recogí correctamente las tablas de Foos y Barras y la relación y crea las propiedades de navegación.

Ahora desde dentro de mi aplicación MVC trato de obtener un Foo como este:

var foo = (from f in _db.Foos where f.Id == id select f).FirstOrDefault();

Luego trato de acceder a la propiedad Bars del objeto foo y no obtengo resultados. Sin embargo, si inspecciono el conjunto _db.Bars, veo las Barras con el FooId establecido en la ID correcta.

¿Qué debo hacer para solucionar por qué la relación no funciona? He consultado muchos tutoriales y la documentación en MSDN para las relaciones de tabla, pero obviamente nada está mal.

Estoy intentando usar esto en una aplicación MVC de ASP.NET en caso de que sea relevante.

¿Fue útil?

Solución

usa una inclusión en la tabla Foos

var foo = (de f en _db.Foos.Include (" Bars ") donde f.Id == id select f) .FirstOrDefault ();

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top