2
我試圖創建一個Linq to Entities查詢來選擇兩個日期之間的記錄。Linq查詢日期範圍不返回任何記錄?
TimeCards.Where(t => t.StartTime >= DbFunctions.CreateDateTime(2015,1,31,null,null,null) && t.EndTime < DbFunctions.CreateDateTime(2017,2,14,null,null,null))
這是我的數據集,我期待已返回
ID StartTime EndTime
1165 2016-02-01 00:15:00.000 2016-02-01 17:00:00.000
1166 2016-02-02 00:15:00.000 2016-02-02 17:00:00.000
1167 2016-02-03 00:15:00.000 2016-02-03 17:00:00.000
但我的結果回來爲0的記錄。
任何想法,爲什麼?
「StartTime」,「EndTime」和「CreateDateTime」的數據類型是什麼?都是'DateTime'嗎?如果對所有'Nullable'類型使用'.Value',會發生什麼?類似於:'DbFunctions.CreateDateTime(2015,1,31,null,null,null).Value' – Ian
您是否嘗試過不使用DbFunctions?同樣在這種情況下,你可以使用SQL profiler(如果它的sql服務器)來理解linq到sql查詢中的問題。 –
可能是愚蠢的,但只是提出,你需要做ToList()在哪裏? – Anil