public async Task <IEnumerable <TreeNode <SearchTvShowViewModel> > > MostWatches() { var result = await MemCache.GetOrAdd(CacheKeys.MostWatchesTv, async() => await TraktApi.GetMostWatchesShows(), DateTime.Now.AddHours(12)); var processed = await ProcessResults(result); return(processed.Select(ParseIntoTreeNode).ToList()); }