在Visual Studio插件中获取当前TFS连接

时间:2010-07-27 00:23:52

标签: visual-studio-2010 tfs tfs2010 visual-studio-addins

我正在研究Visual Studio 2010加载项,我正在尝试弄清楚如何确定当前连接的TFS服务器。我猜我需要使用DTE,但我有一个大脑抽筋,想知道从哪里获取信息。

2 个答案:

答案 0 :(得分:2)

我建议您查看Microsoft.TeamFoundation.VersionControl.Client.Workstation.GetLocalWorkspaceInfo方法,结果您有一个对象并访问ServerUri property

请参阅this documentation on MSDN for more details

答案 1 :(得分:1)

Robaticus最初用解决方案编辑了这个问题。将其转换为社区Wiki答案:

实际上,我可能找到了答案,我从几个地方挑选出来。

var dte = Package.GetGlobalService(typeof(EnvDTE.DTE)) as EnvDTE.DTE;

TeamFoundationServerExt ext = dte.GetObject("Microsoft.VisualStudio.TeamFoundation.TeamFoundationServerExt") as TeamFoundationServerExt;

TeamFoundationServer tfs = new TeamFoundationServer(ext.ActiveProjectContext.DomainUri);
VersionControlServer vcs = tfs.GetService<VersionControlServer>();

var changes = vcs.GetPendingChanges(null);