다음 메소드가 있습니다. 단일 unqiue 주문을 반환합니다. 그러나 나는 단지 첫 번째 결과를 원한다. 이를 달성하는 가장 좋은 방법은 무엇입니까? 물론 List를 반환하고 그 결과를 얻을 수 있습니다.NHibernate. singleOrDefault를 얻으십시오
즉 .List<Order>().SingleOrDefault();
확실히이 acheive 멀리 기준 API를 통해 있는가?
Model.Order order = _session
.CreateCriteria(typeof(Model.Order))
.Add(Restrictions.Eq("UserName", user.UserName))
.Add(Restrictions.Eq("CompanyId", companyId))
.Add(Restrictions.Eq("OrderStatus", OrderStatusHelper.OrderOpen()))
.AddOrder(sortOrder)
.UniqueResult<Model.Order>(); // results not always unique
FirstOrDefault는 SingleOrDefault와 같지 않습니다. First는 첫 번째 레코드를 반환 할 때 하나 이상의 레코드가 발견되면 예외를 throw합니다. –