Exemple #1
0
        public bool AddProduct(int ProductId)
        {
            var findItem = this.cartItems
                           .Where(s => s.Id == ProductId)
                           .Select(s => s)
                           .FirstOrDefault();

            if (findItem == default(Models.Cart.CartItem))
            {
                using (Models.PlymouthEntities db = new PlymouthEntities())
                {
                    var product = (from s in db.Products
                                   where s.Id == ProductId
                                   select s).FirstOrDefault();
                    if (product != default(Models.Product))
                    {
                        this.AddProduct(product);
                    }
                }
            }
            else
            {
                findItem.Quantity += 1;
            }
            return(true);
        }
Exemple #2
0
        public IHttpActionResult PutProduct(int id, Product product)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            using (var ctx = new PlymouthEntities())
            {
                var existingProduct = ctx.Products.Where(p => p.Id == product.Id).FirstOrDefault <Product>();

                if (existingProduct != null)
                {
                    existingProduct.Name            = product.Name;
                    existingProduct.Price           = product.Price;
                    existingProduct.Description     = product.Description;
                    existingProduct.CategoryId      = product.CategoryId;
                    existingProduct.PublishDate     = product.PublishDate;
                    existingProduct.Status          = product.Status;
                    existingProduct.DefaultImageId  = product.DefaultImageId;
                    existingProduct.Quantity        = product.Quantity;
                    existingProduct.DefaultImageURL = product.DefaultImageURL;

                    ctx.SaveChanges();
                }
                else
                {
                    return(NotFound());
                }
            }

            return(Ok());
        }
Exemple #3
0
        public IHttpActionResult PostProduct(Product product)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }

                using (var ctx = new PlymouthEntities())
                {
                    ctx.Products.Add(new Product()
                    {
                        Name            = product.Name,
                        Price           = product.Price,
                        Description     = product.Description,
                        CategoryId      = product.CategoryId,
                        PublishDate     = product.PublishDate,
                        Status          = product.Status,
                        DefaultImageId  = product.DefaultImageId,
                        Quantity        = product.Quantity,
                        DefaultImageURL = product.DefaultImageURL
                    });

                    ctx.SaveChanges();
                }
            }

            catch (DbEntityValidationException e)
            {
                foreach (var eve in e.EntityValidationErrors)
                {
                    Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                      eve.Entry.Entity.GetType().Name, eve.Entry.State);
                    foreach (var ve in eve.ValidationErrors)
                    {
                        Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                                          ve.PropertyName, ve.ErrorMessage);
                    }
                }
                throw;
            }
            return(Ok());
        }