我有两个表Cars
和Bookings
,我希望根据Bookings
表中的carId从Cars
表返回startdate和enddate。
这是我的桌子
汽车
ID Make Model Size
----------- --------------- --------------- ---------------
1 BMW 5Series Medium
2 Dacia Duster Large
3 Ford Mustang Large
预订
ID CarID StartDate EndDate
----------- ----------- ---------- ----------
1 1 2017-02-01 2011-04-05
2 1 2017-05-11 2011-09-15
3 1 2017-09-09 2012-12-15
4 1 2017-07-12 2017-11-14
5 2 2017-01-16 2017-08-28
我正在尝试这个,但一直有错误,不知道如何继续
string query3 = from c in db.Cars
join b in db.Bookings on c.ID equals b.CarID
select new { b.StartDate ,b.EndDate}.ToString();
答案 0 :(得分:1)
我相信你想要这样的东西:
var query3 = from c in db.Cars
join b in db.Bookings on c.ID equals b.CarID
select new { b.StartDate, b.EndDate};
var results = query3.ToList(); // ToList executes the query on the database
// results will be a List<a'> where a'> DateTime StartDate, DateTime EndDate
答案 1 :(得分:1)
根据我的理解,您希望根据给定的车辆ID获取开始日期和结束日期吗?
试试这个:
var carId = 1;
var result = db.Bookings
.Where(booking => booking.CarID == carId)
.Select(b => new { StartDate = b.StartDate, EndDate = b.EndDate })
.ToList();
结果对象有一个car id 1的所有开始日期和结束日期的列表。如果没有找到预订,结果将为空。