2010-12-08 6 views
1

私はアクティブなアイテムの最大数を返す関数を持っています。CreateCriteriaを使用すると、どのようにランダムな順序で結果を並べ替えるのですか?

返された結果をランダムな順序で並べ替えることができるようにしたいと思います。

public IList<Widgets> GetWidgetsToDisplay(int maxToGet) 
{ 
    var query = CommonSessionManager.GetSession().CreateCriteria<Widgets>() 
     .Add(Expression.Eq("IsDeleted", false)) 
     .Add(Expression.Eq("IsActive", true)); 

    return query.SetMaxResults(maxToGet).List<Widgets>(); 
} 
+0

[NHibernateのICriteria APIを使用してランダムな行を選択するにはどうすればいいですか?](http://stackoverflow.com/questions/729687/how-do-i-select-a-random-row-using-nhibernates -icriteria-api) –

答えて

1

これは、データベースに依存することなく、SQL Serverのorder by newid()ソリューションの外観hereを持つことになります。

関連する問題