a consulta @NHibernate con criterios sobre el miembro de la colección secundaria solo devuelve la colección secundaria parcial

Tengo una relación padre-hijo entreTeacher yStudentReport. CadaStudentReport tiene una grabación de campo de marca de tiempo cuando el maestro terminó el informe. Tengo una consulta para encontrar a todos los maestros que hayan completado uno o más de sus informes a partir de un cierto número de minutos atrás:

    public IList<Teacher> FindRecentlyActiveTeachers(int intervalMinutes)
    {
        if (intervalMinutes <= 0)
            throw new ArgumentException("Interval must be a positive number of minutes");

        DateTime activityCutoff = DateTime.Now.AddMinutes(-1 * intervalMinutes);

        return Session.QueryOver<Teacher>()
            .Left.JoinQueryOver<StudentReport>(t => t.StudentReports)
            .Where(r => r.FirstSaveTimestamp >= activityCutoff)
            .TransformUsing(Transformers.DistinctRootEntity)
            .List<Teacher>();
    }

Esto devuelve la lista correcta de maestros, pero la colección de niños para cada maestro solo contiene los informes que coinciden con el criterio de selección. Me gustaría que la recopilación de informes de cada maestro coincidente contenga todos los informes, no solo los pocos informes que cumplan con los criterios.

Existe alguna forma de cargar la colección secundaria completa con entusiasmo u omitir cargarla en esta consulta y confiar en la carga diferida?

Actualiza

Esta es la solución:

        return Session.QueryOver<Teacher>()
            .Fetch(t => t.StudentReports).Eager
            .JoinQueryOver<StudentReport>(t => t.StudentReports)
            .Where(r => r.FirstSaveTimestamp >= activityCutoff)
            .TransformUsing(Transformers.DistinctRootEntity)
            .List<Teacher>();

Respuestas a la pregunta(1)

Su respuesta a la pregunta