Obtención de registros por fecha con solo comparación de partes por día usando nhibernate

Me gustaría recuperar todos los registros de un día en particular, sin importar a qué hora se asocie con esos registros. Hasta ahora tengo un método como este:

public IQueryable<Record> QueryByDay(DateTime day)
{
    DateTime from = day.Date;
    DateTime to = day.Date.AddDays(1);

    return repository.Table
        .Where(t => t.MyDate >= from && t.MyDate < to);
    }

Pero en linq-to-object podemos hacer (asumiendo que Table es ahora una colección):

public IEnumerable<Record> QueryByDay(DateTime day)
{
    return repository.Table
        .Where(t => t.MyDate.Date == day.Date);
}

Lo que obviamente es más legible y se siente más limpio. Me preguntaba si hay una mejor manera de escribir el primer método utilizando almacenamiento de base de datos y nhibernate.

Respuestas a la pregunta(3)

Su respuesta a la pregunta