【发布时间】:2014-07-23 15:15:39
【问题描述】:
我正在尝试创建一个 LINQ 语句,该语句返回一个记录(任务)列表及其最近分配的任务历史日期。所以有两个表,第一个是任务表,其中包含有关单个任务的所有信息,然后是任务历史表,它跟踪任务分配给谁以及如何分配。这两个表都有 TaskID,这是它们可以在连接上链接的地方。问题是在任务历史记录中可能有许多具有相同 TaskID 的记录,但我只想返回具有最近分配日期的记录,这是任务历史记录表中的一列。我该怎么做?
这是我目前所拥有的:
var query = from task in db.AP_Tasks
join taskH in db.AP_TaskHistory on task.TaskID equals taskH.TaskID
orderby new {taskH.AssignDate}
select new {task = task, assignedDate = taskH.AssignDate};
更新:
最新代码:
var query = from task in db.AP_Tasks
from th in db.AP_TaskHistory
where th.TaskID == task.TaskID
orderby th.AssignDate
select new {task = task, assignDate = th.AssignDate};
【问题讨论】:
-
如果您需要最新的
orderby th.AssignDate=>orderby th.AssignDate desc