我想在生日那天搜索,但我不能这样做 这就是我试过的:
类别:
$state.go(url);
条件声明:
[Required]
[DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
[Display(Name = "Birthdate")]
[DataType(DataType.Date)]
public DateTime Birthdate { get; set; }
答案 0 :(得分:0)
使用:
db.Class1.Where(x => x.Birthdate.Day == Convert.ToInt32(search)).ToList());
答案 1 :(得分:0)
如果您想按完整日期搜索:
return View(db.Class1.Where(x => x.Birthdate.Date == Convert.ToDateTime(search).Date)).ToList());
答案 2 :(得分:0)
尝试拆分搜索日期:
var day = search.Date;
var month = search.Month;
var year = search.Year;
db.Class1.Where(x => x.Birthdate.Day == day && x.Birthdate.Month == month && x.Birthdate.Year == year).ToList());
答案 3 :(得分:0)
这种情况正在发生,因为您将出生日期存储为日期时间。如果您只是将它存储为日期,那将会好得多,除非您实际记录的是出生时间!您可以将实体框架配置为使用adding a convention的日期类型。
完成后,装饰您的出生日期字段:
public class Person {
//...
[DataType(DataType.Date)]
public DateTime Birthdate { get; set; }
完成此操作后,您的搜索将按预期工作,因为时间组件不再存储在数据库中。