public async Task <List <JobDetails> > GetJobDetailsAsync(string pipelineName, string stageName, string jobName) { try { var searchUrl = Urls.SearchUrl; var query = new NameValueCollection { { nameof(searchUrl), searchUrl }, { nameof(pipelineName), pipelineName }, { nameof(stageName), stageName }, { nameof(jobName), jobName }, { @"limitCount", jobLimitCount.ToString() }, { @"limitPipeline", "latest" } }; var uri = new Uri(searchUrl).AttachParameters(query); var stream = await Dispatch.GetRawStreamAsync(uri); using (var reader = new StreamReader(stream)) { using (var csvReader = new CsvReader(reader)) { var records = csvReader.GetRecords <JobDetails>(); return(records.ToList()); } } } catch (Exception ex) { Console.WriteLine(ex.Message); return(Enumerable.Empty <JobDetails>().ToList()); } }