我正在使用 TFS SDK。我在 Visual Studio 上使用 TFS 映射了一个项目。在我的代码中,我检查服务器路径和本地路径是否已映射?它们的值是 true,但是当我尝试删除映射路径时,workspace.DeleteMapping() 方法会抛出异常。
它显示“在[本地路径]中找不到任何映射”。但是workspace.IsLocalPathMapped(LocalFolder)方法返回true值?
WorkingFolder workfolder = new WorkingFolder(ServerFolder, LocalFolder);
workspace = workspaces[0];
if (workspace.IsServerPathMapped(ServerFolder) && workspace.IsLocalPathMapped(LocalFolder))
{
workspace.DeleteMapping(workfolder);
}
最佳答案
IsServerPathMapped 和 IsLocalPathMapped 告诉您给定的服务器路径或本地路径是否位于某个工作区映射的下面(或等效路径)。例如,假设您设置了如下递归映射:
C:\dev\project -> $/TeamProject/Main
如果您在“$/TeamProject/Main/Solution/foo.cs”项上运行 IsServerPathMapped,它将返回 true,因为该文件位于您的递归映射之一下方。 IsServerPathMapped 函数询问“如果我执行 GetLatest,该文件是否会在我的工作区中”,答案是肯定的。
如果您能更多地解释一下您尝试使用此代码完成的任务,我也许可以向您指出要使用的不同 API。
关于c# - 给定映射路径时 Workspace.DeleteMapping 方法抛出异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12471713/