我正在寻找一种方法来确定在创建团队项目后使用的流程模板.我现在只能通过查看工作项类型来猜测.我在Visual Studio中找不到任何选项来检索此信息.我需要知道什么过程模板用于不是我自己创建的团队项目.
一般来说,没有办法说出来.如果您创建(或编辑)流程模板,您可以将标识符放入属性中,然后您就可以跟踪哪些项目包含您的模板
为此:编辑Classification\Classification.xml添加节点:tasks/task/taskXml/properties/property如下:
<property name="templateName" value="myTemplate_1.0.1" />
使用此模板创建项目后,在对象模型中,您将能够从项目中提取此信息:
TfsTeamProjectCollection c = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(myuri);
WorkItemStore wis = tpc.GetService();
ICommonStructureService ICss = tpc.GetService();
foreach (Project p in wis.Projects)
{
string ProjectName = string.Empty;
string ProjectState = String.Empty;
int templateId = 0;
ProjectProperty[] ProjectProperties = null;
ICss.GetProjectProperties(p.Uri.ToString(), out ProjectName, out ProjectState, out templateId, out ProjectProperties);
Console.WriteLine("Project: {0}\tTemplate: {1}", ProjectName, ProjectProperties.Where(n => n.Name == "templateName").FirstOrDefault().Value);
}Run Code Online (Sandbox Code Playgroud)
templateId总是-1所以不要认为这会对你有所帮助.
此外 - 如果您有权使用,我建议将此属性添加到集合中的所有模板(甚至是默认模板)中,以便您可以跟踪所有未来项目的模板.不知道为什么他们没有把它放在默认模板中.(如果有足够的人抱怨他们会的话)
小智 2
我找到了另一个解决方法:在 SharePoint 管理中心中,您可以在网站集列表中看到描述所使用的流程模板的注释。我实际上正在寻找一种通过 TFS API 以编程方式检索它的方法,但找不到它。
| 归档时间: |
|
| 查看次数: |
17675 次 |
| 最近记录: |