当前位置:  开发笔记 > 编程语言 > 正文

寻找具体日期

如何解决《寻找具体日期》经验,为你挑选了1个好方法。

任何人都知道如何在实体框架内查询特定日期?我尝试了下面的代码,但它给了我NotSupportedException.

var deposit = (from tempDeposit in entities.Deposit
where !tempDeposit.IsApproved
&& tempDeposit.CreatedDate.Date == DateTime.Today
select tempDeposit).FirstOrDefault();

我也尝试了下面的代码,但仍然给了我NotSupportedException.

var deposit = (from tempDeposit in entities.Deposit
where !tempDeposit.IsApproved
&& tempDeposit.CreatedDate.ToFullString() == DateTime.Today.ToFullString()
select tempDeposit).FirstOrDefault();

ToFullString()是一种扩展方法

public static string ToFullString(this DateTime date){
  return date.ToString("yyyyMMdd");
}

请帮忙.



1> angry person..:

试试这个:

var d1 = DateTime.Today;
var d2 = d1.AddDays(1);
var deposit = (from tempDeposit in entities.Deposit
               where !tempDeposit.IsApproved
                     && tempDeposit.CreatedDate >= d1
                     && tempDeposit.CreatedDate < d2
               select tempDeposit).FirstOrDefault();

由于您不能使用DateTime列的.Date属性,因为必须使用一系列转换,强制转换,截断等在SQL中编写,然后您需要比较整个DateTime值,日期和时间,到一个值,因此你需要比较一个范围.

编辑已更改以反映.AddDays不受支持.

推荐阅读
地之南_816
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有