2013-04-06 90 views
1

我正在使用.Net MVC與EF與Web API的簡單Web服務。在我的模型中,我有一個名爲「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查詢或只是遍歷所有行檢查的條件? – 2013-04-06 17:47:39

+0

'IN'語句將在SQL查詢中生成。 – MarcinJuraszek 2013-04-06 17:52:29

+0

然後LINQ-EF比我想象的要聰明一點! +1 – 2013-04-06 17:54:54

相關問題