我正在使用航班页面。现在,我的数据库中有一些航班,我想显示它们。
通过此查询,我将显示所选日期的所有航班(asp:calendar控件):
var destinationFlights =
(from a in db.Flights
where a.DepartureAirportId == depId && a.DestinationAirportId == destId && a.DepartureDate == depDate
join Airports a1 in db.Airports on a.Airports.AirportName equals a1.AirportName
join Airports a2 in db.Airports on a.Airports1.AirportName equals a2.AirportName
select a).ToList();
我要实现的目标是,例如,我从日历表单中选择日期(2014-10-10),我希望查询在表格中进行搜索,并向我显示从所选日期开始+ -3天的间隔内的所有航班。有什么建议么?
最佳答案
您所需要做的就是确定开始日期和结束日期,然后在where
子句中使用比较:
var earliest = depDate.AddDays(-3);
var latest = depDate.AddDays(4); // Exclusive
var destinationFlights = ...
where ... && a.DepartureDate >= earliest && a.DepartureDate < latest
...;
关于c# - Linq to Sql查询,datediff + -3天,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26057310/