我有一个表来保存用户的生日,我想找到今天出生的用户。
_db.BirthdayReminders.Where(m => DbFunctions.DiffDays(m.Birthday,today.Date)==0 && ).ToList();
但是要找到今年的生日。
答案 0 :(得分:0)
仅检查Day
和Month
怎么办?:
_db.BirthdayReminders
.Where(m => m.Birthday.Day == today.Day && m.Birthday.Month == today.Month)
.ToList();
我不确定您要如何对待2月29日出生的人。显然,有些人在2月28日庆祝生日,其他人则在3月1日庆祝生日。我不确定您会如何处理。
在这种情况下,我的建议是(如果您在2月28日庆祝他们的生日):
true
进行评估,或者两者兼而有之。可以写成:
_db.BirthdayReminders
.Where(m => (m.Birthday.Day == today.Day && m.Birthday.Month == today.Month)
|| (!isLeapYear && m.Birthday.Day == 29 && m.Birthday.Month == 2 && today.Day == 28 && today.Month == 2))
.ToList();