Entity framework 获取小于当前日期的maxdate
我的页面中有一个服务税计算。为此,我必须获得当前的服务税 服务税表如下Entity framework 获取小于当前日期的maxdate,entity-framework,linq,Entity Framework,Linq,我的页面中有一个服务税计算。为此,我必须获得当前的服务税 服务税表如下 Date Percentage 2015-10-01 00:00:00.000 14 2015-11-15 06:12:31.687 14.5 假设当前日期小于2015-11-15我将获得百分比的值为14,如果当前日期等于或大于2015-11-15我将获得百分比的值为14.5 我如何使用Linq?实现这一点?您需要获取所有较低的税费
Date Percentage
2015-10-01 00:00:00.000 14
2015-11-15 06:12:31.687 14.5
假设当前日期小于2015-11-15
我将获得百分比的值为14
,如果当前日期等于或大于2015-11-15
我将获得百分比的值为14.5
我如何使用Linq
?实现这一点?您需要获取所有较低的税费,并且仅在排序后首先获取:
Taxes
.Where(t => t.Date < DateTime.Now)
.OrderByDescending(t => t.Date)
.First()
税收
.Where(t=>t.Datet.Date)
.First()
您需要获取所有较低的税费,并且只在排序后首先获取:
Taxes
.Where(t => t.Date < DateTime.Now)
.OrderByDescending(t => t.Date)
.First()
税收
.Where(t=>t.Datet.Date)
.First()
如果需要比较日期,最好在数据库上进行比较,以防止获取无用数据。为此,您可以使用System.Data.Entity
命名空间访问某些函数:
db.Taxes.Where(t => DbFunctions.TruncateTime(t.Date)
< DbFunctions.TruncateTime(dateParameter)).FirstOrDefault();
db.Taxes.Where(t=>DbFunctions.TruncateTime(t.Date)
System.Data.Entity.DbFunctions.TruncateTime(Datetime)
修剪数据库上Datetime
值的时间部分。如果需要比较日期,最好在数据库上进行比较,以防止获取无用数据。为此,您可以使用System.Data.Entity
命名空间访问某些函数:
db.Taxes.Where(t => DbFunctions.TruncateTime(t.Date)
< DbFunctions.TruncateTime(dateParameter)).FirstOrDefault();
db.Taxes.Where(t=>DbFunctions.TruncateTime(t.Date)
System.Data.Entity.DbFunctions.TruncateTime(Datetime)
修剪数据库中Datetime
值的时间部分。我真的不明白你的问题,你的表中有两条记录,你需要根据时间提取其中一条?我真的不明白你的问题,您的表中有两条记录,您需要根据时间提取其中一条或另一条?这使他能够提取所有记录,即使是他不需要的记录。。。比较数据库上的日期会更好这会让他获取所有记录,甚至是他不需要的记录。。。最好比较数据库上的日期