microsoft / microsoft/azure-devops-python-api
query_by_wiql throws exception
还没有人认领这个 Issue。
- 主要语言
- Python
- 星标
- 684
- 派生
- 218
- 平均合并
- 8 天 10 小时
- 30 天内合并 PR
- 1
描述
query_by_wiql throws exception:
'Unable to build a model: ("Unable to deserialize to object: type, AttributeError: 'str' object has no attribute 'get'", AttributeError("'str' object has no attribute 'get'")), DeserializationError: ("Unable to deserialize to object: type, AttributeError: 'str' object has no attribute 'get'", AttributeError("'str' object has no attribute 'get'"))', DeserializationError("Unable to deserialize to object: type, AttributeError: 'str' object has no attribute 'get'", AttributeError("'str' object has no attribute 'get'")))
I'm trying to get a list of backlog items ids using the following function:
def get_backlog_item_ids(self, project_name, item_type="Product Backlog Item"):
try:
work_item_tracking_client = self.connection.clients.get_work_item_tracking_client()
wiql_query = f"""
SELECT [System.Id]
FROM WorkItems
WHERE [System.TeamProject] = '{project_name}'
AND [System.WorkItemType] = '{item_type}'
ORDER BY [System.Id]
"""
query_result = work_item_tracking_client.query_by_wiql(wiql=wiql_query)
work_item_ids = [item.id for item in query_result.work_items]
print(f"Retrieved {len(work_item_ids)} backlog item IDs from project '{project_name}'.")
return work_item_ids
except Exception as e:
print(f"Error retrieving backlog item IDs: {str(e)}")
return []
贡献指南
这个仓库没有索引到贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
从工作项跟踪客户端的 query_by_wiql 入口开始,使用 issue 中显示的 WIQL 重现该异常。检查 wiql 参数的预期形状,并验证查询是否在没有反序列化错误的情况下返回工作项 ID。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- azure, python
- 领域
- api, devops
- Issue 类型
- 缺陷
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 42/100