Azure DevOps Server - получить `сферу 'проекта - PullRequest
0 голосов
/ 05 апреля 2020

У меня есть Azure DevOps Server v2019.Update1.1, и я хочу использовать tfssecurity cli для создания новых групп в проекте (поскольку Graph API еще не доступен для локального использования)

Для для этого мне нужен параметр scope, который будет идентифицировать проект. Из документации: «Указывает URI проекта, для которого вы хотите отобразить группы. Чтобы получить URI для проекта, откройте Team Explorer, щелкните правой кнопкой мыши проект, выберите« Свойства »и скопируйте всю запись для URL» *

Из результатов поиска Google это выглядит как "vstfs: /// Classification / TeamProject / 6868ab48-73f8-499d-b4c5-bb743f68ad87"

Есть ли способ получить это значение программно через cli или api?

1 Ответ

1 голос
/ 07 апреля 2020

Область действия - это URI проекта, формат которого vstfs://Classification/TeamProject/00000000-0000-0000-0000-000000000000. 00000000-0000-0000-0000-000000000000 - это идентификатор проекта. Вы можете получить идентификатор проекта из Проекты - Список REST api:

GET https://{instance}/{collection}/_apis/projects?api-version=5.0

Или вы можете использовать следующий код для получения URI:

using System;
using Microsoft.TeamFoundation.Server;
using Microsoft.TeamFoundation.Client;
using Microsoft.VisualStudio.Services.Common;
using Microsoft.VisualStudio.Services.Client;

namespace GetTeamProject
{
    class Program
    {
        static void Main(string[] args)
        {

            VssCredentials cred = new VssClientCredentials();
            TfsTeamProjectCollection tpc = new TfsTeamProjectCollection(new Uri("http://TFS2019:8080/tfs/DefaultCollection"), cred);
            tpc.EnsureAuthenticated();
            ICommonStructureService css = tpc.GetService<ICommonStructureService>();
            ProjectInfo[] projects = css.ListProjects();
            foreach (ProjectInfo pro in projects)
            {
                Console.WriteLine(pro.Name);
                Console.WriteLine(pro.Uri);
            }

        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...