我試圖從EntitySQL查詢中使用EntityObject從MSSQL DB中獲取一些記錄。 我用來過濾的字段是日期時間類型。 生成的查詢預計沒有毫秒,到SQL Server不返回任何內容。 當我添加毫秒時,我得到了結果。實體SQL比較datetime毫秒
我怎樣才能使用EntitySQL獲得毫秒毫秒的結果?
謝謝。
我試圖從EntitySQL查詢中使用EntityObject從MSSQL DB中獲取一些記錄。 我用來過濾的字段是日期時間類型。 生成的查詢預計沒有毫秒,到SQL Server不返回任何內容。 當我添加毫秒時,我得到了結果。實體SQL比較datetime毫秒
我怎樣才能使用EntitySQL獲得毫秒毫秒的結果?
謝謝。
這不是優雅,但這個工作對我來說:
foos.SingleOrDefault(f => f.EntryDate.Year == bar.EntryDate.Year &&
f.EntryDate.Month == bar.EntryDate.Month &&
f.EntryDate.Day == bar.EntryDate.Day &&
f.EntryDate.Hour == bar.EntryDate.Hour &&
f.EntryDate.Minute == bar.EntryDate.Minute &&
f.EntryDate.Second == bar.EntryDate.Second);
一種方法是創建一個數據視圖,其中datetime列轉換爲smalldatetime(毫秒數)。
然後將視圖添加到您的實體框架模型,並通過視圖讀取數據。
希望這有助於
西拉
解決方法,我發現是初始獲取存儲日期爲.ToBinary(),然後當你過濾只是做新的DateTime(binaryValue)和與之媲美。