2010-10-08 40 views
2

使用TFS SDK,我使用WorkItemStore.Query查詢工作項:從收集WorkItemCollection項目太慢訪問

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

那麼,您的查詢指定它只需要從工作項中獲取ID。正如你問的那樣,我會懷疑請求你想要的所有信息會更有效率,因爲它需要在它返回之前收集所有信息。

1

您的查詢無法獲取附件。每個wi.Attachments調用都會進行另一個查詢來獲取數據。