編程語言:C# 實體框架6.1自定義的LINQ查詢幫助需要
我有一個名爲LoanDetails數據庫表具有以下字段:
ID -> Primary Key
custID-> INT
startDate -> Datetime
endDate -> Datetime
Amount-> money
我要檢索的貸款細節有效期將持續在距今天三十(30)天內結束。 請幫助我爲此創建LINQ查詢。 因此,我可以使用貸款明細的結束日期值向用戶顯示警報。 謝謝。
編程語言:C# 實體框架6.1自定義的LINQ查詢幫助需要
我有一個名爲LoanDetails數據庫表具有以下字段:
ID -> Primary Key
custID-> INT
startDate -> Datetime
endDate -> Datetime
Amount-> money
我要檢索的貸款細節有效期將持續在距今天三十(30)天內結束。 請幫助我爲此創建LINQ查詢。 因此,我可以使用貸款明細的結束日期值向用戶顯示警報。 謝謝。
var cutoffDate = DateTIme.Now.AddDays(31).Date
var loans = loanDetails.Where(x=>e.EndDate < cutoffDate
與「未來30天一天結束」的訣竅是,這意味着「前第一刻在未來31天」。
因此,您添加31天,獲取日期(這是午夜點),然後在此之前結束。
我最終的代碼解決了這個問題:: var cutoffDate = DateTime.Now.AddDays(31).Date; VAR貸款=(從loanDetail在dc.LoanDetails 其中loanDetail.endDate
它將很像下面。我只向你展示了你的where條件應該在查詢中。
Where((w=>w.startDate.Date >=yourStartDate.Date
&& w.endDate.Date<=yourEndDate.Date));
TimeSpan t = new TimeSpan(30,0,0,0,0)
from ld in LoanDetails
where (ld.endDate - SqlFunctions.GetDate()) == t
select ld
你一定是在開玩笑。初學者的錯誤:如果endDate有一個索引,你只是確保它不被使用,因爲你在該領域的一邊做數學。歡迎來到您的桌面掃描霸主。 – TomTom
SO不是代碼編寫服務。這是一個解決問題的服務。請告訴我們什麼不適合你,我們可以幫助解決它。不要要求我們爲你寫代碼。 – Enigmativity
是的,它是我的錯誤,我沒有說明我到目前爲止所嘗試的@MEMark @ Enigmativity。我寫了以下但最終沒有用。使用(VAR DC =新DCLoanManagerEntities()){ VAR = ntfcust(從loanDetail在dc.LoanDetails 其中((時間跨度A =(loanDetail.endDate- DateTime.Today).DAY)<= 30) 選擇loanDetail。結束日期).ToList(); dataGridView1.DataSource = ntfcust; } – Developerscentral
所以請編輯你的問題,告訴我們你已經嘗試過了。 – Enigmativity