2010-04-03 2 views
0

Nhibernate에서 특정 날짜를 어떻게 조회 할 수 있습니까?NHibernate : Nhibernate에서 특정 날짜를 조회하는 방법

현재 하루 주문을 조회하는 중입니다.

ICriteria criteria = SessionManager.CurrentSession.CreateCriteria(typeof(Order)) 
      .Add(Expression.Between("DateCreated", date.Date.AddDays(-1), date.Date.AddDays(1))) 
      .AddOrder(NHibernate.Criterion.Order.Desc("OrderID")); 

다음 코드를 시도했지만 데이터를 가져 왔습니다.

Expression.Eq("DateCreated", date) 

Expression.Like("DateCreated", date) 

참고 : 는 날짜 값의 패스 데이터베이스에

실제 날짜 값은 같은 것,이 2010-04-03 00:00:00 같은 것이 2010-03-13 11:17:16.000

이 사람이 나에게 방법을 알려 수 이 작업을 수행?

감사합니다.

+0

Expression.Like ("DateCreated", date.ToString ("yyyy-MM-dd %"); –

+0

안녕하세요, 저는 이것을 시도했지만 데이터 유형이 일치하지 않습니다. –

답변

1

데이터베이스 필드에 날짜 및 시간 정보가 있으므로 단일 날짜를 쿼리하면 사이 또는보다 크거나 같음을 사용해야합니다. 쿼리가 작동하지 않는다는 것이 확실하지 않지만 시간 부분이 데이터베이스 레코드의 시간 부분과 일치하지 않으므로 Expression을 사용하는 두 번째 예제는 작동하지 않습니다.

관련 문제