You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过C#配置Jira过滤器以获取全部问题?

获取Jira过滤器所有问题的解决方案

直接设置固定数值(如350)无法确保覆盖所有问题,因为过滤器匹配的问题数量可能动态变化。正确做法是通过分页遍历获取全部问题,具体步骤和代码如下:

  1. 先获取过滤器匹配的总问题数
  2. 循环发起分页请求,直到获取完所有问题
// 获取过滤器详情,拿到总问题数
var filterInfo = jiraConnection.Filters.GetFilterAsync(filter.Id).Result;
int total = filterInfo.IssueCount.Value;

List<Issue> allFilterIssues = new List<Issue>();
int startPosition = 0;
// Jira API单次请求最大返回1000条,设为该值提升效率
int batchSize = 1000;

while (startPosition < total)
{
    // 分页拉取问题,注意使用带startAt参数的方法重载
    var currentBatch = jiraConnection.Filters.GetIssuesFromFilterAsync(filter.Id, startPosition, batchSize).Result;
    allFilterIssues.AddRange(currentBatch);
    startPosition += batchSize;
}

// allFilterIssues 即为过滤器中的所有问题

关键提示

  • Jira API默认限制单次请求最多返回1000条数据,设置超过该值会被自动截断
  • 建议用await替代.Result调用异步方法,避免线程阻塞(需将外层方法改为异步)
  • 若遍历过程中问题数量发生变化(新增/删除),可能出现重复或遗漏,可根据业务场景做相应处理

内容的提问来源于stack exchange,提问作者ATiNoTeImporta

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 16:57:13