2017-04-08 42 views
-1

我想使用lambda表達式比較當前DateTime.Now與從數據庫(時間)中檢索的時間。比較當前時間與WPF中的lambda表達式

我試試這個:

string time = DateTime.Now.Hour.ToString("00") + DateTime.Now.Minute.ToString("00") + DateTime.Now.Second.ToString("00"); 
TimeSpan _currentTime = TimeSpan.ParseExact(time, "HHmmss", CultureInfo.InvariantCulture); 

IQueryable<user> Query = _context.user.Where(s => s.userShifts.Any(s2 => s2.DayOfWeekId == _todayNumber && _currentTime >= s2.TimeFrom && _currentTime <= s2.TimeTo)); 

我得到了以下錯誤:

{"Input string was not in a correct format."}

有什麼錯!

+0

該代碼將無法編譯:第一條語句有兩個錯誤,開始。請提供*實際* [mcve]。 –

+0

我更新了示例 –

+1

爲什麼要經歷解析的麻煩?爲什麼不只是做var _currentTIme = DateTime.Now.TimeOfDay –

回答

1

使用的TimeOfDay到位parseExact

var _currentTime= DateTime.Now.TimeOfDay 
+0

謝謝Danny,這是做我想做的事情的正確方法。 –

0

確定..正確的格式是:

TimeSpan _currentTime = TimeSpan.ParseExact(time, "hh':'mm':'ss", null); 

希望這有助於。