.net-4.0 - Workspace.PendEdit 未 checkout 文件

标签 .net-4.0 tfs-sdk

我正在使用 TFS 2010 SDK 以编程方式将对文件的编辑 checkin 到 TFS 2010 中。TFS 2010 SDK 的文档充其量也很少。当我调用方法workspace.pendedit() 并传入一个我想要标记为具有挂起编辑的文件数组时,实际上没有 checkout 任何内容。因此,当我调用workspace.checkin()传入workspace.getpendingchanges和一些注释时,我得到一个异常,即必须至少有一件事情有待处理的更改(这应该是我传递给pendedit的内容)。关于为什么应用程序没有将文件标记为在工作区中有待编辑的任何想法?

最佳答案

确保您按照正确的顺序执行所有操作,以便 TFS 知道文件已更改。你必须:

  1. 首先从工作区获取文件。
  2. 等待编辑
  3. 对文件进行更改
  4. 检查工作区。

示例:

    GetStatus status = workspace.Get(new GetRequest(migrationPath, RecursionType.None, 
                                             VersionSpec.Latest),GetOptions.Overwrite);
    workspace.PendEdit(migrationPath);

    checkInAuthor = System.Security.Principal.WindowsIdentity.GetCurrent().Name;

关于.net-4.0 - Workspace.PendEdit 未 checkout 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2954354/

相关文章:

tfs - 以编程方式完成 TFS 合并请求

tfs - 我在哪里可以找到 Visual Studio 2015 安装中的 Microsoft.TeamFoundation.VersionControl.Client.dll?

c# - 从 WebService 连接到 Visual Studio Team Services

c# - TFS 2012 API : How do I get all history for a file including renames and merges?

.net - 如何确定 .NET 4 中当前的垃圾收集器模式是什么?

c# - DataTable 在 RejectChanges 上抛出异常

c# - 获取最新方法总是重新下载

asp.net - "Pre-Warming"ASP.NET 缓存的策略

c# - 使用 BlockingCollection<T> 作为单一生产者、单一消费者 FIFO 查询是否好?

c#-4.0 - Log4net 在 Debug 中工作,但在 Release 构建中失败