public async Task <PagedResult <SearchResult> > SearchByTitle(int sourceId, string title, int sortOrder, int limit, int page) { var results = await _searcherFactory(sourceId).SearchByTitle(title, sortOrder, limit, page); var inLibrary = _repository.GetAllIds(sourceId) .ToDictionary(s => s.SourceItemId, s => s.LibraryId); foreach (var result in results.Results) { if (inLibrary.TryGetValue(result.SourceItemId, out int libraryId)) { result.LibraryId = libraryId; } } return(results); }