我需要使用LINQ将日期字符串"2010-06-11"
与数据库中的字段值进行比较"2013-07-25 14:33:58.070"
,但仅比较年月日部分。
我尝试了这个:
updateDate = "2010-06-11";
_adRepository.Query.Where(p => p.DateModified.ToString("YYYYMMDD") <= updateDate).FirstOrDefault();
但这没用,有什么主意吗?
谢谢。
前面未提到的问题之一是,您使用的测试数据将始终无法返回值。“ 2013-07-25”绝不会小于“ 2010-06-11”。
话虽这么说,您的代码实际上应该将updateDate变量转换为日期时间并进行比较,而不是转换表中的DateModifed字段。否则,转换将应用于数据库中的所有记录。我将使用的代码是:
var updateDateString = "2010-06-11";
DateTime updateDate;
if (DateTime.TryParse(updateDateString, out updateDate))
{
_adRepository.Query.Where(p => p.DateModified <= updateDate).FirstOrDefault();
}
else
{
// throw an exception or something
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句