我在asp.net中创建了代理,并在java中调用它。多谢你们的支持。现在,我要查询工作项历史记录以获取所有更改事件。举个例子。如果我更改了bug的assignee,如Studio2010的history列所示,我想查询历史记录,这应该会导致xyz工作项从旧值更改为新值。我尝试过查询WorkItems,如下所示:
String queryWorkItemByDate = "SELECT * FROM WorkItems WHERE System.TeamProject = '“+ projectName + "‘and System.WorkItemType = 'Bug’and System.ChangedDate >= '6/22/2010 6:00:00 PM'";
但是,这个查询给出的是工作项的当前状态,而不是历史记录。如何使用对象模型查询WorkItem历史?
致以问候。
里迪·沙阿
发布于 2010-06-24 22:31:23
您将希望查看嵌入的revision集合,以了解发生了哪些更改。
TeamFoundationServer tfs = new TeamFoundationServer("http://tfs:8080");
tfs.EnsureAuthenticated();
WorkItemStore wis = tfs.GetService<WorkItemStore>();
var results = wis.Query("select * from workitems where [System.WorkitemType] = 'Bug'");
WorkItem wi = results[0];
foreach (Revision r in wi.Revisions)
{
System.Diagnostics.Debug.WriteLine("Revisions:");
for(int i = 0; i < r.Fields.Count; i++)
{
string revisionText = string.Format("Field {0} was '{1}' and is now '{2}'",
r.Fields[i].Name,
r.Fields[i].OriginalValue,
r.Fields[i].Value);
System.Diagnostics.Debug.WriteLine(revisionText);
}
}https://stackoverflow.com/questions/3109835
复制相似问题