使用TFS SDK,我使用WorkItemStore.Query
查询工作项:
WorkItemCollection workItems = WorkItemStore.Query("SELECT ID from workitems");
foreach(WorkItem wi in workItems)
{
string Id = wi.Id;
foreach(Attachment attachment in wi.Attachments)
{
Console.Write(attachment.Uri.OriginalString); //SLOW
}
}
从集合中访问项目太慢了。每次访问WorkItem成员时它是否与TFS服务器通信?有没有办法以这样的方式构建我的查询,它将一次性获取我需要的所有字段?
问题是,TFS服务器位于海外,这就是为什么它很慢。整体查询东西会让它变得更快。
编辑:我无法查询附件字段。 “附件”不是有效字段。
答案 0 :(得分:1)
您的查询无法获取附件。每个wi.Attachments调用将进行另一个查询以获取数据。
答案 1 :(得分:0)
好吧,您的查询指定它只需要从工作项中获取ID。正如您所问,我怀疑请求所有您想要的信息会更有效率,因为它需要在返回之前收集所有信息。