如何获取特定团队项目的签入/更改历史记录?

我正在使用TFS客户端API来尝试查询TFS 2010实例。 我需要能够做到以下几点

  • 对于指定的团队项目,请说“项目A”
  • 获取最近签到此项目的历史记录列表(比如最近50个,或者最后一天的列表)

然后能够遍历此列表并获取项目的元数据(理想的文件和文件夹名称)

我想我需要在VersionControlServer类上使用QueryXXX方法,但是找不到有关如何使用它的任何有用或清晰的示例。

我已经看到有GetLastestChangesetId方法,但这看起来不像它可以作用于特定项目或目录。

这非常简单:

var tfsUrl = "http://myTfsServer:8080/tfs/defaultcollection"; var sourceControlRootPath = "$/MyTeamProject"; var tfsConnection = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(new Uri(tfsUrl)); var vcs = tfsConnection.GetService(); var changeSets = vcs.QueryHistory(sourceControlRootPath, RecursionType.Full); foreach (var c in changeSets) { var changeSet = vcs.GetChangeset(c.ChangesetId); foreach (var change in changeSet.Changes) { // All sorts of juicy data in here } }