/// <summary>
        /// Gets a shopping cart by customer session GUID
        /// </summary>
        /// <param name="ShoppingCartType">Shopping cart type</param>
        /// <param name="CustomerSessionGUID">The customer session identifier</param>
        /// <returns>Cart</returns>
        public static ShoppingCart GetShoppingCartByCustomerSessionGUID(ShoppingCartTypeEnum ShoppingCartType, Guid CustomerSessionGUID)
        {
            DBShoppingCart dbCollection = DBProviderManager <DBShoppingCartProvider> .Provider.GetShoppingCartByCustomerSessionGUID((int)ShoppingCartType, CustomerSessionGUID);

            ShoppingCart shoppingCart = DBMapping(dbCollection);

            return(shoppingCart);
        }
        private static ShoppingCart DBMapping(DBShoppingCart dbCollection)
        {
            if (dbCollection == null)
            {
                return(null);
            }

            ShoppingCart collection = new ShoppingCart();

            foreach (DBShoppingCartItem dbItem in dbCollection)
            {
                ShoppingCartItem item = DBMapping(dbItem);
                collection.Add(item);
            }

            return(collection);
        }
        /// <summary>
        /// Gets a shopping cart by customer session GUID
        /// </summary>
        /// <param name="ShoppingCartTypeID">Shopping cart type identifier</param>
        /// <param name="CustomerSessionGUID">The customer session identifier</param>
        /// <returns>Cart</returns>
        public override DBShoppingCart GetShoppingCartByCustomerSessionGUID(int ShoppingCartTypeID, Guid CustomerSessionGUID)
        {
            DBShoppingCart Cart      = new DBShoppingCart();
            Database       db        = NopSqlDataHelper.CreateConnection(_sqlConnectionString);
            DbCommand      dbCommand = db.GetStoredProcCommand("Nop_ShoppingCartItemLoadByCustomerSessionGUID");

            db.AddInParameter(dbCommand, "ShoppingCartTypeID", DbType.Int32, ShoppingCartTypeID);
            db.AddInParameter(dbCommand, "CustomerSessionGUID", DbType.Guid, CustomerSessionGUID);
            using (IDataReader dataReader = db.ExecuteReader(dbCommand))
            {
                while (dataReader.Read())
                {
                    DBShoppingCartItem shoppingCartItem = GetShoppingCartItemFromReader(dataReader);
                    Cart.Add(shoppingCartItem);
                }
            }

            return(Cart);
        }