Hola
Tengo dos tipos de entidad: Publicaciones <-(1,1)-----(0,n)-> Comentarios. Me gustaría que al cargar las publicaciones se inicializase la propiedad de navegación Publicacion.Comentarios pero no con todos los comentarios, sino solo con los 3 más recientes.
¿Es posible hacer esto con Entity Framework? Como es de suponer, tengo desactivado el LazyLoading.
Estoy trabajando con este código, donde _unitOfWork es una instancia de una clase heredera de DbContext, y carga todos los comentarios.
IQueryable<Publication> query = _unitOfWork.Set<Publication>().Include(p => p.Comments);
He probado a modificar la expresión lambda que le paso a Include con OrderByDescending(p => p.Date).Take(3) pero da un error en tiempo de ejecución: "ArgumentException : La expresión de ruta de acceso Include debe hacer referencia a una propiedad
de navegación definida en el tipo. Use rutas punteadas para hacer referencia a las propiedades de navegación y el operador Select para las propiedades de navegación de colección.\r\nNombre del parámetro: path". Así que obviamente esa no es la forma de
hacerlo.
¿Alguna idea de cómo conseguir cargar sólo los comentarios más recientes? ¿Qué otra estrategia podría usar?
Muchas gracias.