2011-10-27 55 views
4

我可以查詢所有構建一個TeamProject的範圍內:TFS SDK:查詢昨天的建立

var bServer = teamProjectCollection.GetService<IBuildServer>(); 
    IBuildDetail[] builds = bServer.QueryBuilds("myTeamProject"); 

這產生了給定myTeamProject內的所有builds。但我只對昨天的構建感興趣。

當我得到builds內的結果後,我可以明顯地進行過濾。
我仍然想知道是否存在QueryBuilds()的超載以在提供的時間範圍內獲取構建。


背景:
我在原來的TFS構建解決方案,自定義代碼的活動會得到趕上BuildDetail性質對我們&重要會增加他們使用的Microsoft.Office.Interop.Excel一個Excel工作表。
這很方便,因爲它發生在Build &期間,我們的「BuildLog.xls」始終是最新的。

不幸的是這導致this問題,所以我不得不刪除代碼活動&我目前正在實施B計劃: 定踢一天一次,即昨天的查詢構建&增加了他們在一個控制檯應用程序我Excel文件。

回答

7

您可以創建一個IBuildDetailSpec對象並指定MaxFinishTime(時間範圍的結尾)和MinFinishTime(時間範圍的開始)以獲取構建範圍。

IBuildServer有一個方法來創建IBuildDetailSpec和QueryBuilds方法來查詢該規範。

+0

是的,這是我需要的 - 非常感謝。更多有用的信息也可以在這裏http://social.msdn.microsoft.com/Forums/en-US/tfsbuild/thread/68beb94c-f3a2-4303-9d5b-894c58be8258/ – pantelif