C# 在TFS中,如何检查文件是否是最新的或未使用C代码?

C# 在TFS中,如何检查文件是否是最新的或未使用C代码?,c#,C#,如何检查文件夹中的所有文件是否都是最新的。我需要在C#代码中设置一个条件,只有当项目文件夹中有任何文件的最新版本为“否”时,才应该获取项目的最新版本 任何帮助都将不胜感激。有几种方法可以通过编程实现,但最简单的方法是让服务器为您确定这一点:如果您使用preview get选项集执行get latest,它实际上不会执行get,它将简单地告诉您将检索到什么来更新最新版本 例如: GetStatus status = workspace.Get(new GetRequest(null, Versio

如何检查文件夹中的所有文件是否都是最新的。我需要在C#代码中设置一个条件,只有当项目文件夹中有任何文件的最新版本为“否”时,才应该获取项目的最新版本


任何帮助都将不胜感激。

有几种方法可以通过编程实现,但最简单的方法是让服务器为您确定这一点:如果您使用preview get选项集执行get latest,它实际上不会执行get,它将简单地告诉您将检索到什么来更新最新版本

例如:

GetStatus status = workspace.Get(new GetRequest(null, VersionSpec.Latest), GetOptions.Preview);

if(status.NumOperations == 0)
{
    /* All files up to date. */
}
else
{
    /* We are not up to date on some files. */
}

我试过了。但即使文件夹是最新的,属性也会返回大于0的值。在这两种情况下,该值都大于0。下面是代码GetStatus s1=workspace.Get(新的GetRequest(新的ItemSpec(strLocalWorkspacePath,RecursionType.Full),VersionSpec.Latest),GetOptions.GetAll | GetOptions.Overwrite);int i=s1.num操作;不要使用GetOptions.GetAll。即使你是最新的,这也会迫使你去尝试。事实上,如果您的唯一目标是发现是否需要执行get,而不是实际执行get,那么您需要使用GetOptions.Preview,它与GetOptions.GetAll和GetOptions.Overwrite.Simular不兼容