【问题标题】:How to browse items in TFS Version Control programmatically如何以编程方式浏览 TFS 版本控制中的项目
【发布时间】:2019-03-15 04:32:21
【问题描述】:

我需要在 VS2015 中构建一个窗口应用程序来连接 Team Foundation Server 2015。用户可以从对话框中选择集合,然后我将列出所有分支等。我发现文章 Browse items in TFS Version Control programmatically, reposted 可能适合我的应用程序,但下载 ItemBrowser 的链接不起作用。有人有一个例子或一些链接可以帮助我。提前致谢。

【问题讨论】:

标签: c# tfs visual-studio-2015


【解决方案1】:

首先,您需要以编程方式使用 TFS API 连接到 TFS。

您可以通过以下代码在您自己的应用程序中以编程方式使用“浏览”对话框:

VersionControlServer versionControlServer = (VersionControlServer)tfs.GetService(typeof(VersionControlServer)); 
Assembly controlsAssembly = Assembly.GetAssembly(typeof(Microsoft.TeamFoundation.VersionControl.Controls.ControlAddItemsExclude)); 
Type vcChooseItemDialogType = controlsAssembly.GetType("Microsoft.TeamFoundation.VersionControl.Controls.DialogChooseItem"); 
ConstructorInfo ci = vcChooseItemDialogType.GetConstructor( 
                   BindingFlags.Instance | BindingFlags.NonPublic, 
                   null, 
                   new Type[] { typeof(VersionControlServer) }, 
                   null); 
_chooseItemDialog = (Form)ci.Invoke(new object[] { versionControlServer }); 
_chooseItemDialog.ShowDialog(); 
 this.DialogResult = _chooseItemDialog.DialogResult; 

然后你需要列出项目集合中的所有分支,你可以参考下面的链接:How to programmatically get information about branches in TFS? & Get all TFS Branches programmatically in C'#

如果你想从 TFS 下载文件和文件夹,请看这篇文章:Programmatically Downloading Files From Source Control

【讨论】:

  • 我找到了一些关于 TemProjectPicker 收集 FTS 的文章。使用 TeamProjectPicker 和浏览对话框有什么区别?
  • teamProjectPicker 仅提供一个对话框来选择 TeamFoundation 项目的集合。因此,您只能在对话框中列出具有此类的项目。详情可以参考这个博客blogs.msdn.microsoft.com/team_foundation/2010/04/20/…如果你想列出分支等自定义信息,你可能需要使用浏览器对话框。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-23
  • 1970-01-01
  • 1970-01-01
  • 2015-08-10
  • 2012-06-07
  • 2015-05-24
相关资源
最近更新 更多