我正在尝试(通过 wql)获取所有已完成的任务,这意味着有人为他们记录了时间。现在,我在内存中这样做:
foreach (WorkItem wi in workItems)
{
foreach (Revision item in wi.Revisions)
{
try
{
// elided...
myTask.TimeSpent = item.Fields["Completed Work"].Value == null ?
0 : (double)item.Fields["Completed Work"].Value;
}
}
}
我希望能够在这样的初始查询中做到这一点:
var query = "SELECT [System.Id] FROM WorkItems
WHERE [System.TeamProject] = '@project'
and [System.WorkItemType]='Task' *and [System.WorkItem.Completed_Work] <> 0*";
我尝试了不同的方法来钻入“已完成的工作”领域:
[System.WorkItemRevisions.Completed_Work],
[System.WorkItem[Revisions[Completed_Work]]],
[System.WorkItem.Revisions.[Completed Work]]
但我总是得到一个例外。有任何想法吗?