我的表就像这样。
name date phonenumber
venky 25-06-2013 123123123
vasud 27-06-2013 2423727384
sdfds 14-06-2013 12312332132
如果用户想查看6月份的记录,那么他将06作为输入参数传递如何将linq写入sql查询以获取6月月记录作为输出..
答案 0 :(得分:4)
听起来你只想要这样的东西:
public IQueryable<Record> GetRecordsForMonth(int month)
{
return new RecordContext().Where(record => record.Date.Month == month);
}
假设数据库中的date
字段实际上是一个合适的datetime
字段或类似的字段。如果不是,那么修复您的架构。
或者,对于某个范围内的日期,您可以在方法中取两个DateTime
值并按此方式过滤:
public IQueryable<Record> GetRecordsForMonth(DateTime minDateInclusive.
DateTime maxDateExclusive)
{
return new RecordContext().Where(record => record.Date >= minDateInclusive
&& record.Date < maxDateExclusive);
}