Tfs无法使用@Project参数以编程方式从查询中获取项目名称

时间:2016-02-08 09:11:46

标签: tfs tfs2013

伙计们,我正在寻求你的帮助!我希望使用我的自定义插件从查询中获取当前项目名称。

这是我的代码

WorkItemCollection queryResults = workItemStore.Query("SELECT [System.TeamProject] FROM WorkItems WHERE [System.TeamProject] = '@Project'");

foreach (WorkItem item in queryResults)
{
// SomeCode;
}

所以Query的结果是空的......我不知道为什么......如果我正在写作 真实的项目名称,而不是'@Project',它的工作原理..我也尝试写@Project没有引号 - 也没有结果。

2 个答案:

答案 0 :(得分:0)

你不能使用" @ Project"在像这样的代码中。 @Project仅在VisualStudio工作项查询中可用,它可以根据团队资源管理器中当前选定的项目推断团队项目。

答案 1 :(得分:0)

如果您的插件是WorkItemChangedEventHandler,则可以尝试此代码:

WorkItemChangedEvent workItemChange = (WorkItemChangedEvent)notificationEventArgs;
Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItem wi = workItemStore.GetWorkItem(workItemChange.CoreFields.IntegerFields[0].NewValue);

string p = wi.Project.Name