private static ProductCategoryCollection DBMapping(DBProductCategoryCollection dbCollection) { if (dbCollection == null) { return(null); } var collection = new ProductCategoryCollection(); foreach (var dbItem in dbCollection) { var item = DBMapping(dbItem); collection.Add(item); } return(collection); }
/// <summary> /// Gets a product category mapping collection /// </summary> /// <param name="ProductID">Product identifier</param> /// <returns>Product category mapping collection</returns> public static ProductCategoryCollection GetProductCategoriesByProductID(int ProductID) { bool showHidden = NopContext.Current.IsAdmin; string key = string.Format(PRODUCTCATEGORIES_ALLBYPRODUCTID_KEY, showHidden, ProductID); object obj2 = NopCache.Get(key); if (CategoryManager.MappingsCacheEnabled && (obj2 != null)) { return((ProductCategoryCollection)obj2); } DBProductCategoryCollection dbCollection = DBProviderManager <DBCategoryProvider> .Provider.GetProductCategoriesByProductID(ProductID, showHidden); ProductCategoryCollection productCategoryCollection = DBMapping(dbCollection); if (CategoryManager.MappingsCacheEnabled) { NopCache.Max(key, productCategoryCollection); } return(productCategoryCollection); }