그래서 lambda 식과 linq를 함께 사용하기 시작했습니다. 나는 원하는 데이터를 얻으려고 애쓰는 동안 작은 문제가 생겼다. 이 메소드는,이는 "열기"이슈를 선택 현재 코드 람다 식과 linq 사용
public static List<string> getOpenIssuesListByProject(string _projectName)
{
JiraSoapServiceService jiraSoapService = new JiraSoapServiceService();
string token = jiraSoapService.login(DEFAULT_UN, DEFAULT_PW);
string[] keys = { getProjectKey(_projectName) };
RemoteStatus[] statuses = jiraSoapService.getStatuses(token);
var desiredStatuses = statuses.Where(x => x.name == "Open" || x.name == "In Progress")
.Select(x=>x.id);
RemoteIssue[] AllIssues = jiraSoapService.getIssuesFromTextSearchWithProject(token, keys, "", 99);
IEnumerable<RemoteIssue> openIssues = AllIssues.Where(x=>
{
foreach (var v in desiredStatuses)
{
if (x.status == v)
return true;
else
return false;
}
return false;
});
return openIssues.Select(x => x.key).ToList();
}
를 열거 나
여기 락스
에서 진행중인 모든 프로젝트의 목록을의 반환하고,있는 자들을 건너 뛸 것으로 보인다해야 "진행 중".내 질문 : 첫째, 왜 내가 "열린"문제를 얻는 것일까? 그리고 두 번째로 더 좋은 방법이 있습니까?
모든 상태를 먼저 얻는 이유는 해당 상태 ID 만 저장하므로 상태가 모두 "열림"및 "진행 중"과 일치하는 ID를 얻은 다음 해당 ID 번호를 문제 상태 필드.
고마워, 그냥 내 자신도 알아 냈어. 45 분 동안보고 있었고 2 분 후에 도움을 요청했습니다. :) – Andy