有没有办法使用 TFS SOAP/ASMX 而不是来自客户端的 TF 命令

Posted

技术标签:

【中文标题】有没有办法使用 TFS SOAP/ASMX 而不是来自客户端的 TF 命令【英文标题】:Is there any way to use TFS SOAP/ASMX instead of TF command from a client 【发布时间】:2020-08-12 16:44:03 【问题描述】:

有没有什么方法可以从客户端使用 TFS Server SOAP/ASMX 而不是 tf 命令,例如,如果我想使用

http://myServer:8080/tfs/MyCollection/VersionControl/v5.0/repository.asmx

-->操作Get或操作CheckIn;显然我需要事先经过身份验证

但是,是否有任何示例或方法可以使用 ASMX 完成所有步骤,而不是使用 TFVC 的 tf 命令?

我不是在谈论 Azure DevOps REST API,而是在尝试使用 asmx/SOAP 网络服务:

http://myServer:8080/tfs/MyCollection/VersionControl/v5.0/repository.asmx 
http://myServer:8080/tfs/MyCollection/ Services/v3.0/LocationService.asmx

【问题讨论】:

不支持且绝对不推荐访问这些 API 【参考方案1】:

直接访问这些 API 不受支持、未记录且绝对不推荐

支持的途径是使用 Azure DevOps 客户端对象模型(或更旧的 TFS 客户端对象模型)或 Team explorer EveryWhere Java API。

NuGet for the .NET client object model Repo for the Team Foundation Server/Team Services SDK for Java

Tf.exe 建立在这些库之上,团队资源管理器也是如此。任何工具都可以,您可以使用此 API。了解它是如何工作的最简单方法是通过反编译器提取 tf.exe。

【讨论】:

亲爱的@jessehouwing,是否可以使用 Microsoft.TeamFoundation.SourceControl.WebApi 解锁 TFVC 的特定文件? 当然。 Tf.exe 建立在这些库之上,团队资源管理器也是如此。任何工具都可以,您可以使用此 API。了解它是如何工作的最简单方法是通过反编译器提取 tf.exe。

以上是关于有没有办法使用 TFS SOAP/ASMX 而不是来自客户端的 TF 命令的主要内容,如果未能解决你的问题,请参考以下文章

如何使用带有xml的angular+8的soap asmx服务

如何在TFS 2010中更新当前的sprint团队查询?

TFS 发布 - 部署 - 如何在创建发布后安排部署?

如何使用 TFS 离线工作

有没有办法在 TFS 2017 Build 定义中链接变量组?

编写 Azure Devops / TFS API 脚本时 - 有没有办法在不退出的情况下处理“Get Repo 不存在”错误响应?