【发布时间】:2015-06-26 15:01:56
【问题描述】:
我有两个如下所示的表格。 SessionBooking.Date 是一个日期字段,TimeSlot.StartTime 是一个时间字段。
表架构:
您可以在下面看到当前查询我已成功加入两个表,但是我需要将日期和开始时间加入单个“日期时间”字段,以便我可以按日期时间(当前日期和时间)排序
我该怎么做,以及如何用 Linq to SQL 编写。
到目前为止我有这个(不包括加入)
List<SessionBooking> bookings = db.SessionBookings.Where(m => m.MemberId == this.Id && m.LocationId == this.HomeLocationId && m.Date >= currentDate).OrderByDescending(m => m.Date).ThenBy(m => m.TimeSlot.StartTime).Take(limit).ToList();
【问题讨论】:
-
我觉得你的系统设计不好。从概念上讲,日期和时间应始终存储在一起。您的“时间段”概念根本不应该在您的数据库中,而应该由您的业务逻辑层处理。
-
按日期和时间排序有什么问题?
-
您可以简单地添加日期和时间来创建日期时间变量。见stackoverflow.com/questions/3142547/…。
-
另外,总是更喜欢明确的
JOIN语法而不是FROM x, y语法。