public ActionResult ProductAddToCart(int productid, int quantity, int size = 0, string attributes = "") { var currentUserId = Convert.ToInt32(GlobalUser.getGlobalUser().UserId); var productSize = _productSizeBusiness.GetListWT(c => c.ProductId == productid).FirstOrDefault(); var defaultSize = productSize == null ? 0 : productSize.Id; if (size == 0) { size = defaultSize; } if (currentUserId > 0) { var cartList = _AddToCartBusiness.GetListWT(c => c.UserId == currentUserId && c.ProductId == productid); AddToCart addToCart = new AddToCart(); addToCart.ProductId = productid; addToCart.UserId = currentUserId; addToCart.Quantity = quantity; addToCart.Size = size; addToCart.Attributes = attributes; if (cartList.Count() <= 0) { _AddToCartBusiness.Insert(addToCart); } else { addToCart.ID = cartList.FirstOrDefault().ID; _AddToCartBusiness.Update(addToCart); } _unitOfWork.SaveChanges(); } else { CookieStore mycookie = new CookieStore(); var products = mycookie.GetCookie(Enumerator.CustomerAction.AddToCart.ToString()); var newValue = productid.ToString() + "~" + quantity.ToString() + "~" + size.ToString() + "~" + attributes.ToString(); var value = mycookie.FormatCartCookieValue(products, newValue); var expireCookieTimeHr = Convert.ToInt32(ReadConfigData.GetAppSettingsValue("ExpireCookieTimeHr")); mycookie.SetCookie(Enumerator.CustomerAction.AddToCart.ToString(), value, expireCookieTimeHr); } return(new EmptyResult()); }