コード例 #1
0
        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);
        }
コード例 #2
0
        /// <summary>
        /// Gets product category mapping collection
        /// </summary>
        /// <param name="categoryId">Category identifier</param>
        /// <param name="showHidden">A value indicating whether to show hidden records</param>
        /// <returns>Product a category mapping collection</returns>
        public override DBProductCategoryCollection GetProductCategoriesByCategoryId(int categoryId, bool showHidden)
        {
            var       result    = new DBProductCategoryCollection();
            Database  db        = NopSqlDataHelper.CreateConnection(_sqlConnectionString);
            DbCommand dbCommand = db.GetStoredProcCommand("Nop_Product_Category_MappingLoadByCategoryID");

            db.AddInParameter(dbCommand, "CategoryID", DbType.Int32, categoryId);
            db.AddInParameter(dbCommand, "ShowHidden", DbType.Boolean, showHidden);
            using (IDataReader dataReader = db.ExecuteReader(dbCommand))
            {
                while (dataReader.Read())
                {
                    var item = GetProductCategoryFromReader(dataReader);
                    result.Add(item);
                }
            }

            return(result);
        }
コード例 #3
0
        /// <summary>
        /// Gets a product category mapping collection
        /// </summary>
        /// <param name="ProductID">Product identifier</param>
        /// <param name="showHidden">A value indicating whether to show hidden records</param>
        /// <returns>Product category mapping collection</returns>
        public override DBProductCategoryCollection GetProductCategoriesByProductID(int ProductID, bool showHidden)
        {
            DBProductCategoryCollection productCategoryCollection = new DBProductCategoryCollection();
            Database  db        = NopSqlDataHelper.CreateConnection(_sqlConnectionString);
            DbCommand dbCommand = db.GetStoredProcCommand("Nop_Product_Category_MappingLoadByProductID");

            db.AddInParameter(dbCommand, "ProductID", DbType.Int32, ProductID);
            db.AddInParameter(dbCommand, "ShowHidden", DbType.Boolean, showHidden);
            using (IDataReader dataReader = db.ExecuteReader(dbCommand))
            {
                while (dataReader.Read())
                {
                    DBProductCategory productCategory = GetProductCategoryFromReader(dataReader);
                    productCategoryCollection.Add(productCategory);
                }
            }

            return(productCategoryCollection);
        }
コード例 #4
0
        /// <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);
        }