linq to entities - 如何查询存储为char的日期?

时间:2012-04-11 20:41:48

标签: linq entity-framework entity-functions

在db表中,日期以yyyyMMdd格式存储在char(8)字段中。 如何查询日期范围?

我尝试了以下操作但它不起作用:

context.Where(p=> Convert.ToDateTime(p.Date) >= Convert.ToDateTime('20120411');
context.Where(p=> Convert.ToInt32(p.Date) >= Convert.ToInt32('20120411');
context.Where(p=> int.Parse(p.Date) >= int.Parse('20120411');

从我读过的可能的方法是使用EntityFunctions类,但我不知道如何构造查询。关于如何做到这一点的任何想法?

2 个答案:

答案 0 :(得分:0)

将测试字符串转换为日期:

context.Where(p=> Convert.ToDateTime(p.Date) >= DateTime.Parse("2012/04/11 00:00:00");

答案 1 :(得分:0)

context.Where(p=> p.Date.CompareTo("20120411") >= 0);