我正在关注CliientDetails表
07/26/2013 a 07/25/2013 b 2013年7月24日c 07/23/2013 d 07/22/2013 e **
假设我的日期(日期时间)是2013年7月22日,而日期(日期时间)是2013年7月24日
和结果将
2013年7月24日c 07/23/2013 d 07/22/2013 e **
我想要Linq查询
我尝试过以下代码,但错误提示msg
var Result =
(from a in Context.CliientDetails.AsEnumerable()
where a.cliUserName == SalesEmail
&& DateTime.Parse(a.cliGenDate)>=todate
&& DateTime.Parse(a.cliGenDate)>=FromDate
select new NewClientReg_BusinessLayer.Models.viewClientDetails
{
cliGenDate = a.cliGenDate,
cliAckNo = a.cliAckNo,
cliFullName = a.cliFullName,
cliTopic = a.cliTopic,
cliCourse = a.cliCourse,
cliDomain = a.cliDomain,
cliTotalInvest = a.cliTotalInvest
});
但它给出了以下错误消息 字符串未被识别为有效的DateTime。
答案 0 :(得分:0)
尝试使用DateTime.ParseExact代替DateTime.Parse
var provider = CultureInfo.InvariantCulture;
然后
&& DateTime.ParseExact(a.clieGenDate, "dd/MM/yyyy", provider) >= todate
现在好问题是:为什么将日期存储为varchar?
您可能知道使用.AsEnumerable()
,您将在应用where子句之前检索所有数据吗?
你至少可以做到
from a in Context.CliientDetails.Where(c => c.cliUserName == SalesEmal).AsEnumerable()
...