如何用Azure DevOps Python API按自定义字段查询工作项?
使用Azure DevOps Python API直接查询自定义字段匹配的工作项
不需要先创建再删除查询,直接通过run_query方法执行**WIQL(工作项查询语言)**语句就能获取结果,核心是正确构造查询参数:
关键步骤
- 构造符合WIQL语法的查询语句,指定要查询的字段和过滤条件
- 使用
PostedQuery对象封装查询语句,传入run_query方法执行
代码示例
from azure.devops.v5_1.work_item_tracking.models import PostedQuery # 构造WIQL查询语句,根据自定义字段RTCID过滤 # 注意:如果RTCID是数值类型,去掉值的单引号;字符串类型保留 wiql_query = """ SELECT [System.Id], [System.Title], [Custom.RTCID] FROM WorkItems WHERE [Custom.RTCID] = '282739' """ # 封装为PostedQuery对象 posted_query = PostedQuery(query=wiql_query) # 执行查询 query_rsp = wit_5_1_client.run_query( posted_query=posted_query, project=project.id ) # 处理查询结果 if query_rsp.work_items: for work_item in query_rsp.work_items: print(f"工作项ID: {work_item.id}, 标题: {work_item.fields['System.Title']}") else: print("未找到匹配的工作项")
注意事项
- 确保自定义字段的内部名称是
Custom.RTCID,可以在Azure DevOps门户的「项目设置-工作项-字段」中查看字段的「引用名称」 - WIQL查询可以指定需要返回的字段,避免返回不必要的数据提升效率
- 如果需要查询多个条件,可以扩展WHERE子句,比如
AND [System.State] = 'Active'
内容的提问来源于stack exchange,提问作者POVR2
相关产品推荐
相关产品推荐

