无法从 TFS 中的某些 WorkItem 字段中检索信息
Posted
技术标签:
【中文标题】无法从 TFS 中的某些 WorkItem 字段中检索信息【英文标题】:Unable to retrieve information from some of the WorkItem Fields in TFS 【发布时间】:2015-10-21 23:57:38 【问题描述】:所以这些天我正在尝试使用 TFS API。到目前为止一切都很好,但是突然之间.. 我想使用按 ID 搜索的方法来检索特定故事的工作项及其各自的信息,以选择正确的故事。为了不错过一些重要信息,我在查询中正在做SELECT *
。我明白了这个故事,我得到了任务。但似乎很少有领域存在问题 - 即AreaPath
、IterationPath
和Type
。作为一个原始检查,我写下了一些控制台打印来检查什么是好的,什么不是 - 所以如果我 uncomment
之前在执行时命名的三个中的任何一个,就会抛出这个异常:A first chance exception of type 'Microsoft.TeamFoundation.WorkItemTracking.Client.FieldDefinitionNotExistException' occurred in Microsoft.TeamFoundation.WorkItemTracking.Client.dll
。
这是我要打印的内容:
Console.WriteLine(target.Fields["Title"].Value);
Console.WriteLine(target.Fields["Description"].Value);
Console.WriteLine(int.Parse(target.Fields["Id"].Value.ToString()));
Console.WriteLine(target.Fields["AreaPath"].Value); //Problem 1
Console.WriteLine(target.Fields["IterationPath"].Value); //Problem 2
Console.WriteLine(int.Parse(target.Fields["AreaId"].Value.ToString()));
Console.WriteLine(int.Parse(target.Fields["IterationId"].Value.ToString()));
Console.WriteLine(target.Fields["State"].Value);
Console.WriteLine(target.Fields["Type"].Value.ToString()); //Problem 3
无论有没有ToString()
,都没有真正改变。
有什么建议吗?
编辑:它们不为空,我在调试模式下检查过,它们都有赋值。
【问题讨论】:
【参考方案1】:使用CoreField
或内置getter:
Console.WriteLine(target.Fields[CoreField.Title].Value);
Console.WriteLine(target.Fields[CoreField.AreaPath].Value);
Console.WriteLine(target.State);
Console.WriteLine(target.Type.Name);
【讨论】:
以上是关于无法从 TFS 中的某些 WorkItem 字段中检索信息的主要内容,如果未能解决你的问题,请参考以下文章
workitem.open() KeyNotFoundException TFS 2013
无法在TFS 2017中创建MultiValueControl