2013-04-06 3 views
1

웹 API를 사용하는 간단한 웹 서비스의 경우 .Net MVC를 EF와 함께 사용하고 있습니다. 내 모델에는 "Created"라는 날짜 필드가 있습니다. "만든 날짜"의 달이 주어진 월 목록 (목록)의 일부인 모든 항목을 찾기 위해 쿼리를 작성하려면 어떻게합니까?LINQ EF 쿼리를 사용하여 주어진 달에 해당하는 모든 날짜를 가져옵니다.

내 달 목록은 (1,4,5) createdDate.Month가 위 목록의 일부인 모든 항목을 찾아야합니다. 원하는 달 목록

답변

3

사용 Contains 방법 :

List<int> months = new List<int>() { 1, 4, 5 }; 

var items = context.Table.Where(i => month.Contains(i.Created.Month)).ToList(); 
+0

이는 SQL 쿼리를 최적화하거나 상태를 확인하는 모든 행을 반복 할 것인가? –

+0

SQL 질의 내에서'IN' 문이 생성됩니다. – MarcinJuraszek

+0

다음 LINQ-EF는 내가 생각했던 것보다 약간 똑똑합니다! +1 –

관련 문제