Consulta NHibernate3 vs QueryOver [duplicado]

Esta pergunta já tem uma resposta aqui:

Tradeoffs usando o NHibernate 3.0 QueryOver ou provedor LINQ 4 respostas

Notei que existem duas maneiras de criar um bom acesso amigável genérico ao nhibernat

IQueryOver<T, T> query= session.QueryOver<T>().Where(criteria);

IQueryable<T> query= session.Query<T>().Where(criteria);

mplementações de cada interfac

IQueryOver<TRoot, TSubType> : IQueryOver<TRoot>, IQueryOver

IQueryable<out T> : IEnumerable<T>, IQueryable, IEnumerable

@IQueryable implementa o IEnumerable, portanto, suporta todas as coisas amigáveis para LINQ que você esperaria. Estou tendendo a esta implementação, mas queria saber se alguém sabia qual era o objetivo do QueryOver que você não pode realizar com o Query?

questionAnswers(2)

yourAnswerToTheQuestion