2008-09-29 3 views
4

NHibernate ICriteria를 사용하고 .AddOrder를 추가하는 중 ... 맨 위에있는 모든 채워진 것들로 때때로 null 인 속성으로 정렬하고 싶습니다. .AddOrder가이 작업을 수행 할 수 있습니까? 그렇지 않다면 대안이 있습니까?NHibernate ICriteria - 정렬이 null을 허용합니까?

ILists에 대한 정렬 옵션은 많이 필요합니다.

+0

.NET 3.5에서 목록 와 파에 가져 IList의 에 대한 몇 가지 확장 방법이 있습니다. 나는 codeplex에 관한 프로젝트라고 생각한다. –

답변

3

먼저 해당 메서드를 사용하여 null이 아닌 값을 가져야합니다. 우리는 그런 식으로 내 프로젝트에서 정렬을 사용하고 null 값에 문제가 없었습니다 ... 그들은 끝에 나열됩니다.

5

과 유사한 것을 사용하는 경우 : 목록의 마지막이 될 것입니다 주어진 속성에 대한 null로

IList cats = sess.CreateCriteria(typeof(Cat)) 
    .AddOrder(Order.Desc("PropertyName")) 
    .List(); 

개체를.

합니다 (NHibernate documentation에서 일부 촬영.)

+1

잠시만 알고 있지만 링크가 작동하지 않습니다. http://nhforge.org/doc/nh/ko/index.html#querycriteria가 수행해야합니다. – JasonCoder

+0

감사합니다 JasonCoder :) – wprl

+0

'.AddOrder (Order.Desc ("NullableProperty.GrandchildProperty"))'로 정렬하면 어떻게 될까요? NullableProperty에 대해 'null'을 포함하여 모든 부모 객체를 여전히 가져올 수 있습니까? – Michael

관련 문제