NHibernate ICriteria を使用して .AddOrder を追加する ... ときどき null になるプロパティで並べ替え、すべてのデータが一番上に来るようにしたい。.AddOrder でこれを行うことができますか? そうでない場合、代替手段はありますか?
IList の並べ替えオプションには、多くの要望が残されています。
NHibernate ICriteria を使用して .AddOrder を追加する ... ときどき null になるプロパティで並べ替え、すべてのデータが一番上に来るようにしたい。.AddOrder でこれを行うことができますか? そうでない場合、代替手段はありますか?
IList の並べ替えオプションには、多くの要望が残されています。
次のようなものを使用する場合:
IList cats = sess.CreateCriteria(typeof(Cat))
.AddOrder( Order.Desc("PropertyName") )
.List();
指定されたプロパティの NULL を持つオブジェクトは、リストの最後になります。
( NHibernate のドキュメントから一部抜粋。)
そのメソッドを使用して、null 以外の値を最初に取得する必要があります。私のプロジェクトではそのように並べ替えを使用しており、null 値に問題はありませんでした...それらは最後にリストされます。