来自 MSDN 站点
The Date property, which returns a DateTime value that represents a date without its time component
这个方法好
public List<int> GetSymbolIdsFromProjectionsForDate(DateTime testDate)
{
var date = testDate.Date;
var db = _projContext;
List<int> symbList;
using (db)
{
symbList =
db.CommodityProjections.Where(e => DbFunctions.TruncateTime(e.ProjectionDate) == date)
.Select(e => e.CommoditySymbolId)
.ToList();
}
return symbList;
}
列表计数始终为零。因此,在调试时,我发现日期变量实际上不仅仅是日期时间的日期部分,如图所示 日期 = {11/14/2015 12:00:00 AM}
WTF 那么如何使用 SQL Server 比较日期呢? (我刚刚从 MySql 迁移,恕我直言,这更容易)
最佳答案
只需在两个日期上使用DbFunctions.TruncateTime
即可。
.Where(e => DbFunctions.TruncateTime(e.ProjectionDate) == DbFunctions.TruncateTime(testDate)
关于c# - LinqTo 实体中的日期部分相等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33714169/