TFS SDK:查询昨天的构建

时间:2011-10-27 09:37:05

标签: tfs tfs2010 tfsbuild tfs-sdk

我可以在TeamProject中查询所有构建,如下所示:

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

这会产生给定builds内的所有myTeamProject。但我只对昨天的版本感兴趣。

我在builds内获得结果后,显然可以过滤。
我仍然想知道QueryBuilds()是否存在超载以在规定的时间内获得构建。


背景:
在我原来的TFS构建解决方案中,自定义代码活动将捕获对我们而言非常重要的BuildDetail属性。将使用Microsoft.Office.Interop.Excel将它们添加到Excel工作表中。这相当方便,因为它发生在Build&amp;我们的“BuildLog.xls”始终是最新的。

不幸的是,这会导致this问题,所以我不得不删除代码活动&amp;我目前正在实施B计划: 一个控制台应用程序计划每天启动一次,查询昨天的构建和将它们添加到我的Excel文件中。

1 个答案:

答案 0 :(得分:7)

您可以创建一个IBuildDetailSpec对象并指定MaxFinishTime(时间范围的结束)和MinFinishTime(时间范围的开头)以获得范围内的构建。

IBuildServer有一个方法来创建IBuildDetailSpec和一个QueryBuilds方法来查询这个规范。