You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过TFS集合URI编程获取TFS语义版本或版本系列?

编程获取TFS/Azure DevOps Server版本系列的方法

使用ADO .NET REST客户端库

可以借助VssConnection类的GetServerCapabilitiesAsync方法获取服务器版本信息,具体步骤:

  • 用目标TFS集合URI和对应凭据初始化VssConnection实例
  • 调用GetServerCapabilitiesAsync,返回的ServerCapabilities对象包含ServerVersion属性(Version类型)
  • 通过主版本号映射到对应的TFS版本系列,比如主版本号12对应TFS2013、14对应TFS2015

示例代码:

using Microsoft.VisualStudio.Services.Client;
using Microsoft.VisualStudio.Services.Common;
using Microsoft.VisualStudio.Services.ServerCapabilities;

var tfsUri = new Uri("http://your-tfs-ip:port/CollectionName");
var credentials = new VssCredentials(); // 根据实际场景替换为合适凭据

using var connection = new VssConnection(tfsUri, credentials);
var serverCapabilities = await connection.GetServerCapabilitiesAsync();
var serverVersion = serverCapabilities.ServerVersion;

// 判断版本系列
string versionSeries;
if (serverVersion.Major == 12)
{
    versionSeries = "TFS2013";
}
else if (serverVersion.Major == 14)
{
    versionSeries = "TFS2015";
}
// 可根据需要补充更多版本主号的判断逻辑

直接调用REST API

若不想依赖客户端库,可直接请求TFS的版本端点:

  • 发送GET请求到http://your-tfs-ip:port/_apis/server/version
  • 解析返回的JSON响应,提取version字段后解析为Version对象,再通过主版本号判断系列

示例代码(使用HttpClient):

using System.Net.Http;
using System.Text.Json;

var httpClient = new HttpClient();
var response = await httpClient.GetStringAsync("http://your-tfs-ip:port/_apis/server/version");
var versionData = JsonSerializer.Deserialize<JsonElement>(response);
var versionString = versionData.GetProperty("version").GetString();
var serverVersion = Version.Parse(versionString);

// 依据主版本号判断对应系列

版本主号与TFS系列对应关系

  • TFS2013:主版本号12
  • TFS2015:主版本号14
  • TFS2017:主版本号15
  • Azure DevOps Server 2019及后续版本:主版本号保持15,通过次版本号区分具体系列

内容的提问来源于stack exchange,提问作者Aman Varshney

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 17:52:44