如何以编程方式获取TFS 2012产品Backlog项的列名称

时间:2014-02-07 05:17:00

标签: c# tfs tfs2012 tfs-sdk

我们正在使用TFS 2012和SCRUM模板。 我们在TFS 2012的产品积压板中有9个自定义列。 如何使用TFS API库获取每个产品Backlog项的列名

例如

WorkItemCollection wic = workItemStore.Query(wiql);
foreach (WorkItem wi in wic)
{
    //This is not the right property, only values such as New, Committed, Done.
    var notColumnName = field.State; 
}

The Columns

当我查看“自定义列”时,我们的列名称未与State值对齐,因此我无法使用WorkItem.State的值。我不确定这是否正确,我们的架构师设法以这种方式工作,这就是我们所拥有的。

1 个答案:

答案 0 :(得分:0)

不确定您列出的值是字段名称还是PBI的可能状态。要获取任何字段的值,您可以使用:

var fieldValue = wi.Fields["System.State"].Value;
fieldValue = wi.State;

如果这些是字段名称,您可以使用名称代替它的引用名称:

Field assigned = wi.Fields.["Assigned To"]; //works
Field storyChange = wi.Fields.["Story Change"];

如果您不确定名称或引用名称,可以检查WorkItemTypeDefinition。