private Cart AddNewCart(int productId, int count, bool trade = false)
        {
            if (!DataManager.Products.SearchFor(x => x.Id == productId).Any())
            {
               throw  new Exception("Товар не найден");
            }
            var product = DataManager.Products.SearchFor(x => x.Id == productId).Single();
            int markup = 0;
            double price = 0;
            if (product.MarkupId != null && DataManager.Markups.SearchFor(t => t.Id == product.MarkupId).Any())
            {
                if (trade)
                {
                    markup = DataManager.Markups.SearchFor(t => t.Id == product.MarkupId).First().TradeMarkup;
                }
                else
                {
                    markup = DataManager.Markups.SearchFor(t => t.Id == product.MarkupId).First().RetailMarkup;
                }
            }
            if (!trade)
            {
                price = (product.ShoppingPrice + (product.ShoppingPrice * markup / 100));
            }
            else
            {
                price = product.ShoppingPrice + (product.ShoppingPrice * markup / 100);
            }

              var  cart = new Cart()
            {
                ProductId = productId,
                Count = count,
                Price = price,
                CartId = ShoppingCartId,
                DateCreated = DateTime.Now
            };
            DataManager.Carts.Insert(cart);
            return cart;
        }
 public Cart SetProductCount(Cart cart, int count)
 {
     if (cart == null) throw new ArgumentException("Нет такого товара в корзине");
     if (count <= 0) throw new ArgumentException("Кол-во товара всегда больше 0");
     cart.Count = count;
     DataManager.Carts.Edit(cart);
     return cart;
 }