Nam*_* VU 2 c# directory mapping tfs source-control-explorer
假设我们在TFS源代码控制中有一个已经映射到本地文件夹的解决方案SolutionFolder.
我们在这个子文件夹SubFolder中SolutionFolder.我们如何编写C#代码来获取此映射路径SubFolder?
使用WorkStation.Current以获取有问题的文件夹的信息:
导入以下命名空间:
using Microsoft.TeamFoundation.Client;
using Microsoft.TeamFoundation.VersionControl.Client;
Run Code Online (Sandbox Code Playgroud)
然后使用您可以获得您想要的数据:
var workspace = Workstation.Current.GetLocalWorkspaceInfo(solutionFolder);
if (workspace != null)
{
var teamProjectUri = workspace.ServerUri;
// var server = TfsConfigurationServerFactory.GetConfigurationServer(teamProjectUri);
var projectCollection = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(teamProjectUri);
var cssService = projectCollection.GetService<ICommonStructureService4>();
var project = cssService.GetProjectFromName(solutionName);
}
Run Code Online (Sandbox Code Playgroud)
从那里你可以轻松地抓住Workspace并从那里获取serverpath: workspace.GetWorkspace().GetServerItemForLocalItem()
要提供凭据,您可以使用接受a的其他重载之一CredentialsProvider.默认提供者是UICredentialsProvider.或者你也可以打电话server或projectCollection的EnsureAuthenticated.
也可以看看: