Я хочу добавить WebPageControl в WorkItemType и вам нужно определить коллекцию TeamProject текущего рабочего элемента в качестве параметра пути для URL-адреса. WebPageControle показывает веб-приложение C#. Есть ли поле вроде System.Teamproject
или другим способом, который дает мне коллекцию Teamproject? Я знаю, что идентификатор рабочего элемента не уникален для всех коллекций, а путь к области включает только проект, но не коллекцию.Получить коллекцию teamproject от WorkItem
ответ
Я не верю, что есть поле, которое вы можете передать на вызываемую страницу, но так как конфигурация шаблона процесса хранится на уровне проекта, вы можете настроить определение типа рабочего элемента и просто жестко закодировать uri к коллекции проекта в свойствах WebpageControl.
Существует также возможность обновить шаблон процесса, прежде чем регистрировать его в коллекции проектов. Так как каждая коллекция проектов имеет собственную библиотеку шаблонов, вам нужно обновить ее только при обновлении шаблона на уровне коллекции в этом случае.
Это, к сожалению, вам придется делать каждый раз при создании нового проекта или обновлении шаблона процесса существующего проекта Team. Это не должно быть ужасно сложно для скрипта, хотя ...
Если у вас уже есть объект WorkItem, вы можете сделать wi.Store.[Collection].xxx
.
Как только у вас есть магазин, вы можете получить все данные.
Предполагается, что у него есть доступ к рабочему элементу, но я не думаю, что он имеет это при вызове страницы. – jessehouwing
Прежде всего, как вы планируете получать рабочие элементы, потому что для этого вам нужно сначала подключиться к коллекции или проекту. Это означает, что у вас уже будет правильный экземпляр проекта/коллекции. –
Хорошая точка! Мне не нужно извлекать рабочий элемент. Мне нужно знать коллекцию, потому что у меня есть таблица базы данных со столбцом «collection/project», и мне нужно получить нужные наборы данных для текущего элемента работы. – user3853096