问题描述
我想实现一个查询,删选时间大于某个开始时间list=(frompindatabase.AAwherep.UserOpenId==openid&&p.ItemCreateTime>=Convert.ToDateTime(startDate)orderbyp.ItemCreateTimedescendingselectp)
报错LINQtoEntities不识别方法“System.DateTimeToDateTime(System.String)”,因此该方法无法转换为存储表达式。
解决方案
解决方案二:
DateTimedate=Convert.ToDateTime(startDate);list=(frompindatabase.AAwherep.UserOpenId==openid&&p.ItemCreateTime>=dateorderbyp.ItemCreateTimedescendingselectp);
解决方案三:
解决方案四:
首先这个startDate是符合时间标准的。其次先转换再过滤如1L。
解决方案五:
把Convert.ToDateTime(startDate)放到查询外面的临时变量,再使用
解决方案六:
varstart=Convert.ToDateTime(startDate);list=(frompindatabase.AAwherep.UserOpenId==openid&&p.ItemCreateTime>=startorderbyp.ItemCreateTimedescendingselectp)try:EntityFunctions.DiffMicrosecondshttps://msdn.microsoft.com/en-us/library/dd412631(v=vs.110).aspx
解决方案七:
1楼已答还可以用用EF提供的函数自己百度一下,你以后会遇到怎么根据月份分组那么就只能用EF的的函数了