public IEnumerable <WishlistDTO> LoadWishlist(string AccountId, string languageCode) { var cacheProvider = new CacheProvider(memoryCache); var performancesWp = cacheProvider.GetAndSave( () => GetKey(languageCode), () => perfomanceRepository.GetPerformanceTitlesAndImages(languageCode)); var perfIds = WishlistRepository.GetPerformanceIdsInWishlist(AccountId, languageCode); var result = from perfId in perfIds join perfWp in performancesWp on perfId equals perfWp.PerformanceId select new WishlistDTO { PerformanceId = perfId, MainImage = perfWp.MainImageUrl, Title = perfWp.Title }; return(result); }