Microsoft Api не может получить httpclient для создания рабочего элемента - PullRequest
0 голосов
/ 12 марта 2020

Может кто-нибудь помочь, что означает эта ошибка enter image description here

Это проблема с подключением? операция, выполняемая на сервере onpremise tfs, здесь я использую маркер личного доступа TFS для выполнения операций авторизации.

Ответы [ 2 ]

0 голосов
/ 06 апреля 2020

Из-за того, что в тексте сообщения об ошибке была проблема с кодировкой, не удалось выяснить проблему, Произошла отладка на сервере и обнаружена, что URL-адрес TTFS с коллекцией не формируется должным образом, поэтому после сообщения об ошибке «страница не найдена», после что мы исправили это, обновив URL-адрес tfs api.

0 голосов
/ 13 марта 2020

Вот фрагмент кода, создающий рабочий элемент Bug в DevOps с использованием библиотеки HttpClient, для вашей справки:

public class CreateBug
    {
        readonly string _uri;
        readonly string _personalAccessToken;
        readonly string _project;

        public CreateBug()
        {
            _uri = "https://xxx.visualstudio.com";
            _personalAccessToken = "xxx";
            _project = "xxxxx";
        }

        public WorkItem CreateBugUsingClientLib()
        {
            Uri uri = new Uri(_uri);
            string personalAccessToken = _personalAccessToken;
            string project = _project;

            VssBasicCredential credentials = new VssBasicCredential("", _personalAccessToken);
            JsonPatchDocument patchDocument = new JsonPatchDocument();

            //add fields and thier values to your patch document
            patchDocument.Add(
                new JsonPatchOperation()
                {
                    Operation = Operation.Add,
                    Path = "/fields/System.Title",
                    Value = "Authorization Errors"
                }
            );

            patchDocument.Add(
                new JsonPatchOperation()
                {
                    Operation = Operation.Add,
                    Path = "/fields/Microsoft.VSTS.Common.Priority",
                    Value = "1"
                }
            );

            VssConnection connection = new VssConnection(uri, credentials);
            WorkItemTrackingHttpClient workItemTrackingHttpClient = connection.GetClient<WorkItemTrackingHttpClient>();

            try
            {
                WorkItem result = workItemTrackingHttpClient.CreateWorkItemAsync(patchDocument, project, "Bug").Result;

                Console.WriteLine("Bug Successfully Created: Bug #{0}", result.Id);

                return result;
            }
            catch (AggregateException ex)
            {
                Console.WriteLine("Error creating bug: {0}", ex.InnerException.Message);
                return null;
            }
        }

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