/// <inheritdoc /> public IEnumerable<TreeNode<IProductCollection>> GetRootTrees() { var cacheKey = GetCacheKey("GetRootTrees"); var trees = (IEnumerable<TreeNode<IProductCollection>>)Cache.GetCacheItem(cacheKey); if (trees != null) return trees; var factory = new TreeNodeFactory<IProductCollection>(); return (IEnumerable<TreeNode<IProductCollection>>) Cache.GetCacheItem(cacheKey, () => factory.BuildTrees(GetAll())); }
/// <inheritdoc /> public IEnumerable <TreeNode <IProductCollection> > GetRootTrees() { var cacheKey = GetCacheKey("GetRootTrees"); var trees = (IEnumerable <TreeNode <IProductCollection> >)Cache.GetCacheItem(cacheKey); if (trees != null) { return(trees); } var factory = new TreeNodeFactory <IProductCollection>(); return((IEnumerable <TreeNode <IProductCollection> >) Cache.GetCacheItem(cacheKey, () => factory.BuildTrees(GetAll()))); }