En mi aplicación asp.net mvc 3, estoy usando el patrón de repositorio. Tengo 3 entidades, empresa, país, ciudad. Cada uno de ellos tiene su propio repositorio. La entidad de compañía tiene claves extranjeras FoundedCountry y FoundedCity. Ahora en una vista, quiero mostrar los detalles de la empresa. En esta vista, quiero ver los detalles de la Compañía, así como el nombre de FoundedCountry y el nombre de FoundedCity. En mi opinión, tengo que manejar esto con una especie de consulta JOIN. Pero estoy atascado en cómo lograr esto en el patrón de repositorio. ¿Cómo puedo manejar este JOIN en el patrón de repositorio?¿Cómo puedo consultar tablas cruzadas con el patrón de repositorio?
Gracias.
"Esto significa que no crea un repositorio alrededor de una tabla (más o menos derrota el propósito) ". Por lo que sé, tengo que crear un repositorio para cada entidad. De su comentario, creo que tengo que agregar otro repositorio que manejará consultas complejas. ¿Derecha? – SherleyDev
No :). No 'tiene que' crear un repositorio para cada entidad. El repositorio básicamente oculta todo lo relacionado con la base de datos del resto de la aplicación. Dentro del repositorio puedes usar entidades, EF o Nhibernate, no importa. El repositorio usa internamente el orm, en su caso las entidades y luego devuelve los objetos que la aplicación comprende. Las entidades mismas ya son una abstracción utilizada por el repositorio. – MikeSW
En el siguiente tutorial dice "En este tutorial, implementará una clase de repositorio para cada tipo de entidad". Lo estaba siguiendo. http: //www.asp.net/mvc/tutorials/getting-started-with-ef-using-mvc/implementation-the-repository-and-unit-of-work-patterns-in-an-asp-net-mvc-application – SherleyDev