2015-04-23 2 views
3

У нас есть требование передать пользовательскую переменную запроса для фильтрации записей TFS, запустив сохраненный запрос TFS.Создание переменной запроса в TFS

Как мы имеем @Me, @Project, @Today и [Any] мы можем использовать пользовательскую переменную, как показано ниже, если да, то как мы можем это сделать или есть лучший подход для этого.

UserEmailAddress = @EmailAddress, чтобы получить записи, соответствующие адресу @EmailAddress, который передается из исходного кода C#, и мы добавим переменную и вызовет сохраненный запрос TFS.

var variables = new Dictionary<string, string>() { { "project", "ESE_Proj" }, {"EmailAddress", "test} }; 

wiQuery = new Query(wiStore(), query.QueryText, variables); 

wiTrees = wiQuery.RunLinkQuery(); 

поле имя типа рабочего элемента, мы создали типы рабочих элементов, скажем, пример Лицо является тип рабочего элемента с UserEmailAddress, как поля в нем. Я хочу создать запрос в tfs, чтобы пользователь мог вызвать запрос из C#, отправив адрес электронной почты, взяв его из текстового поля и запустив запрос для введенного адреса электронной почты.

+0

Является ли 'UserEmailAddress' настраиваемым полем в этих рабочих элементах? –

+0

UserEmailAddress - это имя поля в TFS И/или значение поля оператора --------------------------------- -------------------------------------------------- Team Project = Тип проект и работы Item = Person и UserEmailAddress = EmailAddress Я хочу, чтобы добавить значение объявления EmailAddress и передать значение из C# и запустить этот запрос из C# –

+0

имя поля элемента работы? И это встроенное поле, или это настраиваемая область? –

ответ

0

Вы не сможете сохранить запрос в TFS. Хотя вы можете создавать и использовать пользовательские переменные в C# с API TFS, они не понимают их.

Вы можете использовать @me, @project, @today и @currentiteration в сохраненном запросе.

+0

Я также использую API для запуска общих запросов, но по какой-то причине он не принимает переменную @project. Есть идеи, почему это так? –

+0

Вы не можете использовать @project в do, поскольку он не является автоматическим. Это функция Team Explorer. Вам нужно передать все «@xxx» в запрос. –

0

Хорошо, получилось. Потому что запрос также используется остальной частью команды в проводнике команд. Я оставил @project там, но когда мне это нужно, я заменю @project на фактическое имя проекта.

Смежные вопросы