[英]Get user list from team/group via REST API Azure DevOps
我有一個與服務總線集成的服務掛鈎,該服務總線在階段等待批准時觸發,在消息中我得到分配給批准的組,並且我需要獲取該組所有成員的郵件地址。
目前我只能獲得小組的詳細信息,而無法獲得有關成員的信息。
我也在嘗試使用 Microsoft.VisualStudio.Services 庫的 GraphHttpClient。
如果您所說的團隊是 DevOps 服務中的概念,那么您可以使用以下代碼在 C# 中獲取團隊成員。
using Newtonsoft.Json.Linq;
using RestSharp;
using System;
namespace GetTeamMembers
{
class Program
{
static void Main(string[] args)
{
string OrgName = "xxx";
string wanted_projectname = "xxx";
string wanted_teamname = "xxx";
string PAT = "xxx";
var client1 = new RestClient("https://dev.azure.com/"+OrgName+"/_apis/teams?api-version=6.0-preview.3");
var request1 = new RestRequest("https://dev.azure.com/"+OrgName+"/_apis/teams?api-version=6.0-preview.3", Method.Get);
request1.AddHeader("Authorization", "Basic "+PAT);
var response1 = client1.Execute(request1);
JObject json_response1 = JObject.Parse(response1.Content);
int count1 = (int)JObject.Parse(response1.Content)["count"];
for (int i=0;i<count1;i++) {
var team_name = (string)json_response1["value"][i]["name"];
var project_name = (string)json_response1["value"][i]["projectName"];
var team_id = (string)json_response1["value"][i]["id"];
var project_id = (string)json_response1["value"][i]["projectId"];
if (project_name==wanted_projectname&&team_name==wanted_teamname) {
var client2 = new RestClient("https://dev.azure.com/"+OrgName+"/_apis/projects/"+project_id+"/teams/"+team_id+"/members?api-version=6.0");
var request2 = new RestRequest("https://dev.azure.com/"+OrgName+"/_apis/projects/"+project_id+"/teams/"+team_id+"/members?api-version=6.0", Method.Get);
request2.AddHeader("Authorization", "Basic "+PAT);
var response2 = client2.Execute(request2);
Console.WriteLine(response2.Content);
}
}
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.