Ich probiere einen Code aus einem NH 3.0-Kochbuch aus und frage mich, warum ich den folgenden Code nicht kompilieren kann. I denke, dass der QueryProjectionBuilder, der diese Arbeit machen sollte, in "NHibernate.Criterion.Lambda" ist, aber die Verwendung der Direktive dafür nicht hilft.nhibernate queryOver Projektionssyntax
Die Probleme sind die SelectGroup und SelectAvg Teile. Angenommen, die Syntax aus dem Buch ist korrekt, kann jemand eine fehlende Referenz hier sehen?
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]
});
}
}
}