日期:2014-05-20  浏览次数:20797 次

linq动态查询中日期查询的问题
用linq的动态查询,代码如下
 searchsql = "MembersRegisterTime>=2008-9-6";
 var query = db.VOrderMaxsid.Where(searchsql).Select("new(MembersMobile)");

报错说Operator '>=' incompatible with operand types 'DateTime?' and 'Int32'

我应该怎么拼接这个serchsql条件字符串中的日期呢?

------解决方案--------------------
探讨
引用:
这是你的代码:
searchsql = "MembersRegisterTime>=2008-9-6";
var query = db.VOrderMaxsid.Where(searchsql).Select("new(MembersMobile)");
我改了下你的代码:
var query = db.VOrderMaxsid.Where(t=>t.MembersRegisterTime >= Convert.ToDateTime("2008-9-6").Select(t=>t.MembersMobile);
你应该是查询满足MembersRegisterTime>=2008-9-6的数据,只需要显示MembersMobile对吧,我这样能实现。
希望能帮上你。


我是一个通用查询,还要拼接很多条件,所以这样不行

------解决方案--------------------
searchsql = "MembersRegisterTime<=DateTime(2009,08,06)"