假設我住在時區的今天日期是:12/3/2014 保存記錄之前我用UTC保存日期,因此它將是12/2/2014根據當地時間從數據庫中檢索記錄
user.Created = DateTime.UtcNow;
現在我有,我想基於過濾器「今日」上檢索記錄搜索頁面。我也想截斷時間,所以我使用EF的DbFunction。
DateTime dateDifference = DateTime.Now.Date;
var result= queryableData
.Where(s => dateDifference ==
DbFunctions.CreateDateTime(s.Created.Year, s.Created.Month,
s.Created.Day, 0, 0, 0)).AsQueryable();
上面的查詢不返回任何記錄,因爲保存的日期是在UTC其中2014年12月2日,但我生活在一個時區,其中的日期是2014年12月3日。所以它是有道理的,我如何修改上述查詢來滿足我的要求。任何建議
什麼是數據庫的類型?日期或日期時間? – 2014-12-02 14:09:22
數據類型爲DateTime,記錄值保存爲UTC 12/2/2014 1:41 PM。 – 2014-12-02 14:10:51
如果定義「本地今天」作爲午夜+ 24小時日期範圍,那麼你可以「今天UTC」翻譯「本地今天」進入和使用,作爲搜索條件。 – 2014-12-02 14:14:29