2012-05-31 1 views
0

내가 수행해야하는 작업은 nHibernate에서 쿼리를 만드는 것입니다 (완전히 동적으로 얼마나 많은 개체를 가질지 모르겠다).nHibernate abstractCriterion 및 동적 쿼리 만들기

이 쿼리에서 반환해야하는 내용은 특정 ID의 개체 (예 : List<int>)입니다.

내가 AbstractCriterion으로 그것을 만들 수 있습니다 알고 있지만 어떻게 내 List<int>에서 객체가 첫 번째인지 확인하는 방법 아무 생각

Restrictions.Eq("Id",first item from my list of ints).Or("Id",second item) .... and so on. 

같은 제한을 만들 수있는 방법이 있습니까.

어떻게 만들 수 있습니까?

session.CreateCriteria(typeof(XYZ)) 
.Add(Expression.In("Id", values)) 

답변

3

: 사전에

덕분에 당신은 In 기준이 필요하십니까?

+0

값이 int 치의 내 경우 목록에있는 일부 개체의 목록은 다음과 같습니다 – harry180

+0

Thi. 비록 NHibernate가 각 값을 매개 변수로 보낼 것이라는 것을 명심 하긴하지만. 따라서 배열이 큰 경우 매개 변수 크기 제한에 맞춰 실행하게됩니다. – Vadim

+0

크기 제한은 nHibernate @ Vadim에 있습니까? – harry180