有没有办法以编程方式获取所有 WorkItemType 可用列?

Is there a way to get all WorkItemType Available Columns Programmatically?

我想我可能必须提取项目和项目类型,然后为每个 WorkItemType 提取可用列?

我想我可以像这样从 属性 中提取所有值来做到这一点:

WorkItem WI;

Type myType = WI.GetType();
IList<PropertyInfo> props = new List<PropertyInfo>(myType.GetProperties());

foreach (PropertyInfo prop in props)
{
    object propValue = prop.GetValue(myObject, null);
}

但我认为这不是正确的做法。有办法吗?

如果您只想要所有类型工作项的所有字段的列表。

您可以使用位于 [=26] 中的以下 witadmin 命令列出为团队项目集合(与项目相同)定义的工作项类型字段=] 您的 Visual Studio 安装文件夹:

witadmin listfields /collection:http://my.tfs.server/MyCollection

关于这个命令的详细描述你可以参考这里:Manage work item fields [witadmin]

此外,还有一个来自 MSDN 的工作项字段索引。此参考包括核心系统 processes/process 模板中定义的所有字段:敏捷、Scrum 和 CMMI。