4
は、私がNH2でこれを行う傾向にあった、潜在的に再利用可能な私のクエリ自己完結型とを維持するには、次のNHibernateは再利用可能なQueryOver
public class FeaturedCarFinder : DetachedCriteria
{
public FeaturedCarFinder(int maxResults) : base(typeof(Car))
{
Add(Restrictions.Eq("IsFeatured", true));
SetMaxResults(maxResults);
SetProjection(BuildProjections());
SetResultTransformer(typeof(CarViewModelMessage));
}
}
は私がNH3に移動したことを今QueryOverを使用するようにしたいのですが、私QueryOverを使用して上記を行う方法がわからないのですか?ちょうどではなく、基本クラスとしてDetachedCriteriaをを使用する
public class FeaturedCarFinder : QueryOver<Car, Car>
{
public FeaturedCarFinder(int maxResults)
{
Where(c => c.IsFeatured);
Take(maxResults);
BuildProjections();
TransformUsing(Transformers.AliasToBean(typeof(CarViewModelMessage)));
}
private void BuildProjections()
{
SelectList(l =>
l.Select(c => c.IsFeatured)
//...
);
}
}
非常に似ていますが、QueryOver(すなわち2種類の引数バージョン)の使用に注意してください。NHユーザーリストに