예제 #1
0
        private void BindCartModal(string ProductId)
        {
            List <DevMod.Models.MCommon.MDataObjects.MCartModal>    cartProducts = new List <DevMod.Models.MCommon.MDataObjects.MCartModal>();
            List <DevMod.Models.MCommon.MViewObjects.MViewProducts> allProducts  =
                (List <DevMod.Models.MCommon.MViewObjects.MViewProducts>)HttpContext.Current.Cache["allProducts"];

            allProducts = allProducts.Where(o => o.ProductId == ProductId).ToList();
            DevMod.Models.MCommon.MDataObjects.MCartModal cm = new DevMod.Models.MCommon.MDataObjects.MCartModal();
            cm.ProductId = ProductId;
            cm.Name      = allProducts[0].Name1;
            cm.Price     = allProducts[0].Price;
            cm.Image     = allProducts[0].ImageUrl1;

            if (allProducts.Count > 0)
            {
                if (Session["currentModal"] != null)
                {
                    cartProducts = (List <DevMod.Models.MCommon.MDataObjects.MCartModal>)Session["currentModal"];
                    if (!cartProducts.Exists(o => o.ProductId == ProductId))
                    {
                        cartProducts.Add(cm);
                        Session["currentModal"] = cartProducts;
                    }
                    else
                    {
                        SendMessageToPage("Product has already been Added");
                    }
                }
                else
                {
                    cartProducts.Add(cm);
                    Session["currentModal"] = cartProducts;
                }
            }

            Repeater rep = (Repeater)Master.FindControl("repCartModal");

            rep.DataSource = cartProducts;
            rep.DataBind();


            List <string> q = ((from o in cartProducts
                                select o.Price).ToList());
            List <float> prices = q.Select(float.Parse).ToList();

            float cartPrice = 0;

            if (q.Count > 0)
            {
                cartPrice = prices.Sum();
            }


            Button btnCart = (Button)Master.FindControl("btnCart");

            btnCart.Text = "Cart ($" + cartPrice.ToString() + ")";
            Label lblSubtotal = (Label)Master.FindControl("lblSubTotal");

            lblSubtotal.Text = cartPrice.ToString();
        }
예제 #2
0
        protected void repCartModal_ItemCommand(object source, RepeaterCommandEventArgs e)
        {
            string commandName     = e.CommandName.ToString();
            string commandArgument = e.CommandArgument.ToString();

            if (string.Equals(commandName, "DeleteProduct"))
            {
                List <DevMod.Models.MCommon.MDataObjects.MCartModal> cartProducts =
                    (List <DevMod.Models.MCommon.MDataObjects.MCartModal>)Session["currentModal"];
                if (cartProducts.Exists(o => o.ProductId == commandArgument))
                {
                    DevMod.Models.MCommon.MDataObjects.MCartModal mc = new DevMod.Models.MCommon.MDataObjects.MCartModal();
                    mc.ProductId = commandArgument;
                    cartProducts.RemoveAll(o => o.ProductId == commandArgument);
                    repCartModal.DataSource = cartProducts;
                    repCartModal.DataBind();
                    Session["currentModal"] = cartProducts;
                }
            }
        }