TFS自定义现场报告历史价值

时间:2014-01-03 02:27:11

标签: tfs reporting field

在一些自定义字段上使用Agile模板。

Custom-Field-X是一个下拉列表,其允许值设置为0,1,2,3 - 此值可能每天更改。

需要一种方法来检查Custom-Field-X在其生命周期内是否曾被设置为0。

使用TFS2010。

谢谢!

1 个答案:

答案 0 :(得分:1)

我假设您正在谈论为TFS工作项添加的自定义字段。您可以使用以下代码来确定该值是否设置为0。或者,您也可以使用workItemStore.GetWorkItem(id)通过Id获取特定的工作项。您可以找到有关检索工作项@ http://pwee167.wordpress.com/2012/09/18/retrieving-work-items-using-the-team-foundation-server-api/的详细信息。

using Microsoft.TeamFoundation.Client; 
using Microsoft.TeamFoundation.WorkItemTracking.Client; // You need to add reference to both these assemblies in your project

var collectionUri = new Uri("<TfsUrl>/<CollectionName>"); // For e.g. "http://tfs:8080/DefaultCollection"

var projectCollection = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(collectionUri);

WorkItemStore workItemStore = projectCollection.GetService<WorkItemStore>();

var results = workItemStore.Query("SELECT * FROM WORKITEMS");

WorkItem workItem = results[0];

foreach (Revision revision in workItem.Revisions)
{
    var originalValue = revision.Fields["Custom-Field-X"].OriginalValue;

    var curretValue = revision.Fields["Custom-Field-X"].Value;
}