Как я могу запросить рабочие элементы и их связанные наборы изменений в TFS? - PullRequest
13 голосов
/ 11 мая 2011

В TFS 2010 у меня есть рабочие элементы со связанными наборами изменений.Я могу сгенерировать запрос, который сообщает о рабочих элементах , которые я ищу.Теперь я хочу сделать запрос Рабочие элементы и прямые ссылки , который включает все changesets , связанные с этими рабочими элементами.В редакторе запросов я не могу найти никаких средств, чтобы указать набор изменений как связанный элемент.Являются ли рабочие элементы единственными возможными выходными данными из запроса?

Ответы [ 3 ]

25 голосов
/ 09 июня 2011

Можно использовать API TFS, как показано в следующем фрагменте.

var projectCollection = new TfsTeamProjectCollection(
    new Uri("http://localhost:8080/tfs"),
    new UICredentialsProvider());
projectCollection.EnsureAuthenticated();
var workItemStore = projectCollection.GetService<WorkItemStore>();
var versionControlServer = projectCollection.GetService<VersionControlServer>();
var artifactProvider = versionControlServer.ArtifactProvider;
var project = workItemStore.Projects["Test01.MSFAgile.v5"];
var teamQueryFolder = project.QueryHierarchy["Team Queries"] as QueryFolder;
var query = teamQueryFolder["My Tasks"];
var queryDefinition = workItemStore.GetQueryDefinition(query.Id);
var variables = new Dictionary<string, string>
{
    {"project", query.Project.Name}
};
var workItemCollection = workItemStore.Query(
    queryDefinition.QueryText,
    variables);
foreach (WorkItem workItem in workItemCollection)
{
    Console.WriteLine("WI: {0}, Title: {1}", workItem.Id, workItem.Title);
    foreach (var changeset in
        workItem.Links
            .OfType<ExternalLink>()
            .Select(link => artifactProvider
                .GetChangeset(new Uri(link.LinkedArtifactUri))))
    {
        Console.WriteLine(
            "CS: {0}, Comment: {1}",
            changeset.ChangesetId,
            changeset.Comment);
    }
}
14 голосов
/ 11 мая 2011

Я только что посетил вебинар Совершенствование совместной работы разработчиков и тестеров , где я задал свой вопросИнструктор Кен Арнесон из alpi.com подтвердил, что ссылки на наборы изменений не могут быть переданы через редактор запросов в TFS Team Explorer.Для доступа к ссылкам на наборы изменений необходимо использовать другие инструменты для доступа к «Кубу».Мне нужно больше учиться.

9 голосов
/ 22 мая 2013

Если вы выполните запрос и включите количество внешних ссылок> 0, это фактически даст вам все рабочие элементы, с которыми связаны наборы изменений.

...