我的應用程式使用 Entity Framework Core 從 SQL 資料庫加載資料。為了避免加載我的表的所有資料條目Schedule并在之后過濾它們,我想通過將Schedule.Date條目(一個字串)與之前創建的DateTime名為targetDate. 由于在此查詢中無法直接使用DateTime.Parseto 轉換Schedule.Date為 a DateTime,我改為將其轉換為 anobject然后DateTime顯式轉換。以下行代表我在做什么:
Schedule schedule = _context.Schedule.Where(s => (DateTime)(object)s.Date >= targetDate).First();
這現在作業正常。但是,我不想以后遇到問題,所以我需要了解DateTime在這種情況下強制轉換使用哪種格式。雖然資料庫中的日期是字串,但它們都是以格式提供的,en-US并且投射它們似乎只使用這種格式,這會很棒。我如何確定它總是使用這種格式,以及在使用這樣的演員表時如何確定要使用的格式?
uj5u.com熱心網友回復:
假設您使用的是 SQL Server
雖然資料庫中的日期是字串,
出于多種原因,這很糟糕。在這里,您需要進行表掃描以將所有字串轉換為日期以執行比較。
它們都以 en-US 格式提供,并且投射它們似乎只使用這種格式,這會很棒。我如何確定它總是使用這種格式,以及在使用這樣的演員表時如何確定要使用的格式?
轉換在 SQL Server 中完成,它將根據連接的當前語言將字串轉換為日期。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/370522.html
