Beispiel #1
0
        public ActionResult AddCart(string asin)
        {
            var cartId = string.Empty;
            var hmac   = string.Empty;

            var authentication = this.GetConfig();
            var wrapper        = new AmazonWrapper(authentication, this._amazonEndpoint, this._associateTag);

            AmazonCartItem item;

            if (Session["cartId"] == null)
            {
                item = new AmazonCartItem(asin);

                var cardCreateResponse = wrapper.CartCreate(new List <AmazonCartItem> {
                    item
                });

                Session["cartId"] = cardCreateResponse.Cart.CartId;
                Session["hmac"]   = cardCreateResponse.Cart.HMAC;

                return(Json(new { Successful = true, cardCreateResponse.Cart.CartId }, JsonRequestBehavior.AllowGet));
            }

            cartId = Session["cartId"] as string;
            hmac   = Session["hmac"] as string;

            item = new AmazonCartItem(asin);
            var cardAddResponse = wrapper.CartAdd(item, cartId, hmac);

            return(Json(new { Successful = true, cardAddResponse.Cart.CartId }, JsonRequestBehavior.AllowGet));
        }
 public void AddItemToCart(AmazonCartItem Item, Cart cart)
 {
     base.ParameterDictionary.Add("CartId", cart.CartId);
     base.ParameterDictionary.Add("HMAC", cart.HMAC);
     base.ParameterDictionary.Add($"Item.1.ASIN", Item.Asin);
     base.ParameterDictionary.Add($"Item.1.Quantity", Item.Quantity.ToString());
 }
Beispiel #3
0
        public AmazonCartAddOperation CartAddOperation(AmazonCartItem amazonCartItem, Cart cart)
        {
            var operation = new AmazonCartAddOperation();

            operation.AssociateTag(this._associateTag);
            operation.AddItemToCart(amazonCartItem, cart);
            return(operation);
        }
Beispiel #4
0
        public CartAddResponse CartAdd(AmazonCartItem item, string cartId, string hmac)
        {
            var cart = new Cart {
                CartId = cartId, HMAC = hmac
            };
            var operation = this.CartAddOperation(item, cart);

            var webResponse = this.Request(operation);

            if (webResponse.StatusCode == HttpStatusCode.OK)
            {
                return(XmlHelper.ParseXml <CartAddResponse>(webResponse.Content));
            }
            else
            {
                var errorResponse = XmlHelper.ParseXml <CartAddErrorResponse>(webResponse.Content);
                this.ErrorReceived?.Invoke(errorResponse);
            }

            return(null);
        }