0

我的桌子是这样的。

name       date          phonenumber
venky      25-06-2013     123123123
vasud      27-06-2013     2423727384
sdfds      14-06-2013     12312332132

如果用户想查看 6 月份的记录,那么他将 06 作为输入参数传递如何将 linq 写入 sql 查询以获取 6 月份的记录作为输出。

4

1 回答 1

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);
}
于 2013-03-26T09:44:31.897 回答