Github api使用octokit.net通过标签过滤问题

时间:2015-03-19 10:11:05

标签: c# asp.net-mvc github-api octokit.net

目前我对GitHub API的调用会返回我的回购的所有问题。

var repoIssueRequest = new RepositoryIssueRequest
{
    State = itemState,// Is ItemState.Open or ItemState.Closed
    Labels = new[] { label1, label2}// Trying to specify the labels I want to filter by, but there is no set, so this won't work
};

var gitRepoIssues = (_gitHubclient.Issue.GetForRepository(string owner, string repo name, repoIssueRequest)).Result.ToList();

我不仅要指定是打开还是关闭问题,还要指定标签。规范(View Here)将标签指定为参数之一,但在octokit.net中,我无法指定标签列表,因为它只有getter访问器。

RepositoryIssueRequest实施IssueRequestIssueRequest包含public Collection<string> Labels { get; }

目前我在获得所有问题后按标签过滤,但是如果返回了几百个问题然后过滤这一系列问题,则必须返回大量数据。如何指定标签,以便减少返回问题集合所需的时间?

1 个答案:

答案 0 :(得分:3)

我在Octokit.net repo上打开了一个问题,并得到了我的问题的答案。

var repoIssueRequest = new RepositoryIssueRequest
{
    State = itemState,// Is ItemState.Open or ItemState.Closed
    //Labels = new[] { label1, label2}// Don't specify label names here
};

repoIssueRequest.Labels.Add("Label1");// Repeat for label 2 and so on or use .AddRange()

var gitRepoIssues = (_gitHubclient.Issue.GetForRepository(string owner, string repo name, repoIssueRequest)).Result.ToList();

我感谢shiftkey快速回复我的问题