0

使用VssConnection(或其他)有没有办法判断所连接的服务器是在本地还是由 Microsoft 托管(即 Azure DevOps 服务)?到目前为止,我的研究表明,如果ServerTypeGUID 是,{87966eaa-cb2a-443f-be3c-47bd3b5bf3cb}那么它就是一个本地实例,但我在任何地方都找不到此文档。

在以前版本的 API(基于 SOAP 的 API)中ServerCapabilities,由 的实例返回的枚举TfsTeamProjectCollection曾经能够做到这一点。属性 'IsHostedServer' 上TfsTeamProjectCollection的此信息实际上是从服务器本身返回的。

有没有办法肯定地说出来?

4

1 回答 1

1

更新

我已经在我这边进行了测试,您是正确的,您可以使用ServerTypeVssConnection 的属性来判断服务器是托管的还是本地的。87966eaa-cb2a-443f-be3c-47bd3b5bf3cb是服务器,00025394-6065-48ca-87d9-7f5672854ef7而是服务。不幸的是,我没有找到任何文档说明此信息。但是从测试来看,ServerType 确实给出了服务器信息。


通常,我们使用以下代码连接到 Azure DevOps Service/Server:

VssConnection connection = new VssConnection(new Uri(c_collectionUri), creds);

如果您连接到 Azure DevOps 服务,您将定义c_collectionUri如下:

String c_collectionUri = "https://dev.azure.com/org";

如果您连接到 Azure DevOps Server,您将定义c_collectionUri如下:

String c_collectionUri = "http://TFS:8080/tfs/defaultcollection";
于 2020-05-18T07:38:35.163 回答