如何在Azure DevOps中获取含负责团队的工作项列表?
Azure DevOps 获取带负责团队的工作项列表解决方案
方法1:OData 关联查询
Azure DevOps的OData实体支持跨实体关联,Teams、TeamSettings和WorkItems可通过区域路径关联起来。直接构造OData查询,一次性拉取工作项及对应负责团队:
https://analytics.dev.azure.com/{org}/{proj}/_odata/v3.0-preview/WorkItems ?$expand=Area($expand=TeamSettings($expand=Team)) ?$select=WorkItemId,Title,Area/TeamSettings/Team/Name
该查询会返回工作项ID、标题,以及对应区域路径关联的团队名称。若一个区域路径对应多个团队,可根据你的团队区域分配规则添加$filter条件做过滤。
方法2:REST API 本地映射匹配
分两步操作,先获取团队与区域路径的映射关系,再和工作项列表做匹配:
- 获取项目下所有团队信息:
GET https://dev.azure.com/{org}/{proj}/_apis/teams?api-version=7.1-preview.3
- 遍历每个团队,获取其关联的区域路径:
GET https://dev.azure.com/{org}/{proj}/{teamId}/_apis/work/teamsettings/areapaths?api-version=7.1-preview.1
- 通过Work Items REST API或查询API获取目标工作项列表,提取每个工作项的
AreaPath字段,在本地将其与团队的区域路径映射做匹配,给工作项添加上对应的团队名称。
方法3:Power Query 可视化合并
适合非开发人员,用Excel或Power BI的Power Query处理:
- 第一步:通过Power Query的Azure DevOps连接器,导入工作项数据;
- 第二步:导入项目下所有团队的区域路径数据(可通过REST API导出为CSV,或直接用Power Query调用API获取);
- 第三步:使用Power Query的「合并查询」功能,以工作项的
AreaPath和团队的区域路径为匹配键,将团队名称列合并到工作项列表中; - 最后加载到表格,即可得到带团队列的工作项列表。
方法4:自定义字段自动赋值(长期方案)
若需要长期稳定显示团队列,可给工作项类型添加「负责团队」自定义字段,再通过以下方式自动赋值:
- 用Azure DevOps流水线的PowerShell任务,在工作项创建/更新时,根据其
AreaPath查询对应团队,更新自定义字段; - 或用Azure Function监听工作项事件,触发时自动匹配区域路径与团队,更新字段。后续用常规查询就能直接拉出团队列。
内容的提问来源于stack exchange,提问作者Raul
相关产品推荐
相关产品推荐

