我的数据库中有 issutime 表,它具有以下格式:
当我按准确的日期和时间执行搜索时,我得到了结果。但我想要的是仅使用日期执行搜索。例如:2014-02-28 应返回该日期的所有结果。
这是我的代码:
var date = Convert.ToDateTime(search);
return View(db.newsletter.Where(x => x.issuetime == date).ToList());
有什么想法吗?
最佳答案
这与 Kosar 的方法类似,但更简单。它还应该正确处理当天最后一秒发生的事件。
var date = Convert.ToDateTime(search).Date;
var nextDay = date.AddDays(1);
return View(db.newsletter
.Where(x => x.issuetime >= date && x.issuetime < nextDay)
.ToList());
Michael Dunlap 的方法适用于 LINQ-to-SQL,但 LINQ to Entities 似乎无法处理它。 Entity Framework 有 TruncateTime(参见 here ,但 EntityFunctions 似乎已被弃用,所以我不建议使用它。
关于c# - 仅搜索日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24213616/