【问题标题】:Issue with TFS VersionControlServer GetWorkspace throwing ItemNotMappedExceptionTFS VersionControlServer GetWorkspace 引发 ItemNotMappedException 的问题
【发布时间】:2015-07-10 16:48:24
【问题描述】:

我有一小段代码在我尝试获取工作区时不断失败。

        var tfs = new TfsTeamProjectCollection(new Uri("https://mytfs.com/projects"));
        var versionControlServer = tfs.GetService<VersionControlServer>();
        var workspace = versionControlServer.GetWorkspace(@"C:\MyProjects\ProjectA\BranchA");

我已经验证它是在 TFS 中映射的(你知道,我在 ProjectA 的多个分支上工作了几年)。在收到 ItemNotMappedException 并映射每个级别后,我还专门检查了映射(C:\MyProjects 已显式映射,C:\MyProjects\ProjectA 已显式映射,c:\MyProjects\ProjectA\BranchA 已映射)。

无论我将什么变体传递给 versionControlServer.GetWorkspace(),它都会引发该错误。

这是我的 TFS 代码的范围。我有正确的 TFS 项目集合(它失败了几次,直到我找到了确切的 url)。

请注意,我唯一想做的就是:

workspace.PendEdit(FilePath);

这是我唯一需要执行的 TFS 命令。因此,如果有其他方法可以做到这一点,我也愿意接受。

希望有人有答案或建议!

【问题讨论】:

    标签: c# visual-studio-2013 version-control tfs-sdk


    【解决方案1】:

    答案很可怕,但是,默认情况下对 Microsoft.TeamFoundation.VersionControl.Client 的引用设置为复制本地:True,特定版本:True。

    即使我的系统上只有这个 dll 的一个版本并且正在本地复制,但当我将“特定版本”设置为 False 时,一切都神奇地起作用了。

    我使用的是 VS 2013,dll 是 V12.0.0.0

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-12
      • 2017-07-06
      • 2013-08-16
      • 2019-11-13
      • 1970-01-01
      • 2018-12-24
      相关资源
      最近更新 更多