Get current TFS connection in a Visual Studio addin
I'm working on a Visual Studio 2010 add-in, and I'm trying to figure out how to determine the currently connected TFS server. I'm guessing I need to use D开发者_Go百科TE, but I'm having a brain cramp figuring out where to get the info.
I suggest you check out the Microsoft.TeamFoundation.VersionControl.Client.Workstation.GetLocalWorkspaceInfo
method, in result you have an object and access ServerUri property
See this documentation on MSDN for more details.
Robaticus originally edited the question with the solution. Converted it to a Community Wiki answer:
Actually, I may have found the answer, which I culled from a couple places.
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);
精彩评论