使用TFS API如何在特定日期获取文件的变更集ID?

使用TFS API如何在特定日期获取文件的变更集ID?,tfs,Tfs,我希望可以将DateVersionSpec传递到VersionControlServer.DownloadFile()中,但它不起作用。它告诉我该项在该版本中不存在,即使该文件在传递日期时存在于源代码中 我是否需要查询项目历史记录,以便确定文件在相关日期的版本?使用查询历史(…)方法 我当前的代码: version = new DateVersionSpec(date); var changeSets = this.vcServer.QueryHistory(remoteFile, Versio

我希望可以将
DateVersionSpec
传递到
VersionControlServer.DownloadFile()
中,但它不起作用。它告诉我该项在该版本中不存在,即使该文件在传递日期时存在于源代码中

我是否需要查询项目历史记录,以便确定文件在相关日期的版本?使用
查询历史(…)
方法

我当前的代码:

version = new DateVersionSpec(date);
var changeSets = this.vcServer.QueryHistory(remoteFile, VersionSpec.Latest, 0,      
    RecursionType.None, user, version, version, 50, true, false);
if (changeSets == null) 
{
throw new Exception("Failed to find..."); 
}

foreach (var item in changeSets)
 {

 }
当前,当我提取可枚举的变更集时,我没有得到任何回报

我使用的代码非常像这样:


更新:我拥有的代码非常接近(实际上与文章中的代码相同),但是如果文件是在传入日期之前添加的,并且没有更改,那么它就会死亡,因为它只有一个更改,这是一个添加

这让我在我的应用程序上找到了我想要的东西。如果不起作用,请检查以确保文件路径正确。这就是我第一次犯的错误

this.vcServer.GetItem(remoteFile, new DateVersionSpec(date));