Использование библиотеки YouTrackSharp

Использование библиотеки YouTrackSharp для запроса данных из трекера.

Для запроса данных необходимо создать подключение:

// Создаем и открываем подключение
var con = new Connection("myhost.myjetbrains.com", 80, false,"youtrack");
con.Authenticate("vpupkin", "PassworD");

// ... тут что-то делаем ...

// Закрываем подключение
con.Logout();

Получение списка всех проектов:

var pm = new ProjectManagement(con);
IEnumerable<Project> projects = pm.GetProjects();

Получение списка всех задач проекта:

var projectId = "MyProject"; // если идентификатор проекта брать из класса Project, то необходимо использовать свойство ShortName, т.е. var projectId = project.ShortName;
var im = new IssueManagement(con);
IEnumerable<Issue> issues = im.GetAllIssuesForProject(projectName);

Работа с классом Issue не очень проста и очевидна и происходит следующим образом:

Issue issue = ...; // исходный экземпляр класса Issue, полученный из метода IssueManagement.GetAllIssuesForProject или из другого метода YouTrack API

// Вариант 1: работа с Issue как с динамическим объектом
dynamic dynamicIssue = issue.ToExpandoObject();
var summary = dynamicIssue.summary; // получение значения кратного описания задачи

// Вариант 2: работа с Issue как со словарем
var dicIssue = issue.ToExpandoObject() as IDictionary<string, object>;
var summary = dicIssue["summary"];

Второй вариант — единственно возможный в случае, когда у задачи есть поля, содержащие пробел в своем названии и к ним нельзя обратиться как к члену класса (как правило этим грешат кастомные поля).

About the author

Добавить комментарий

Сказать спасибо

Способ платежа:

Подписаться на обновления

Укажите свой e-mail чтобы получать уведомления о новых статьях.

Присоединиться к еще 3 подписчикам