nhibernate queryOver sintaxe de projeção
Estou tentando algum código de um livro de receitas do NH 3.0 e me pergunto por que não consigo obter o código abaixo para compilar. Eupensar o QueryProjectionBuilder que deve fazer esse trabalho está em "NHibernate.Criterion.Lambda", mas a diretiva using para isso não ajuda.
Os problemas são as partes SelectGroup e SelectAvg. Supondo que a sintaxe do livro esteja correta, alguém pode ver uma referência ausente aqui?
namespace Queries.Implementations
{
using System;
using System.Collections.Generic;
using System.Linq;
using Eg.Core;
using NHibernate;
using NHibernate.Criterion;
using NHibernate.Criterion.Lambda;
public class QueryOverQueries : CookbookQueriesBase
{
public override IEnumerable<NameAndPrice> GetAvgDirectorPrice(ISession session) {
return _session.QueryOver<Movie>()
.Select(list => list
.SelectGroup(m => m.Director)
.SelectAvg(m => m.UnitPrice)
)
.List<object[]>()
.Select(props =>
new NameAndPrice
{
Name = (string) props[0],
Price = (decimal) props[1]
});
}
}
}