public async Task <int[]> Search(SearchRequest searchRequest) { var array = searchRequest.Keywords.Split(','); var searchKeywords = array.Select(k => k.Trim()); var results = new List <int>(); foreach (var keyword in searchKeywords) { if (keyword == string.Empty) { results.Add(0); } else { var requestUrl = $"{_searchOptions.SearchUrl}/search?q={HttpUtility.UrlEncode(keyword)}&num={_searchOptions.ResultSize}"; var request = new HttpRequestMessage(HttpMethod.Get, requestUrl); var searchResult = await _httpClientWrapper.SendAsync(request); results.Add(_matchService.Count(searchResult, searchRequest.Url)); } } return(results.ToArray()); }