Example #1
0
        public static List <CartData> createList()
        {
            //Method is to create list of 10 values with 3 duplicated

            List <CartData> cart = new List <CartData>();
            CartData        a    = new CartData();

            a.itemCode = "C001"; a.quantity = "10"; //a.description = "Max";a.uom = "dozen";
            CartData b = new CartData();

            b.itemCode = "C002"; b.quantity = "10"; //b.description = "Max";  b.uom = "dozen";
            CartData c = new CartData();

            c.itemCode = "C003"; c.quantity = "10"; //c.description = "Max";  c.uom = "dozen";
            CartData d = new CartData();

            d.itemCode = "C004"; d.quantity = "10"; //d.description = "Max";  d.uom = "dozen";

            //DUPLICATE
            CartData e = new CartData();

            e.itemCode = "C001"; e.quantity = "10";//e.description = "Max";  e.uom = "dozen";

            CartData f = new CartData();

            f.itemCode = "C005"; f.quantity = "10";//f.description = "Max";  f.uom = "dozen";
            CartData g = new CartData();

            g.itemCode = "C006"; g.quantity = "10";//g.description = "Max";  g.uom = "dozen";

            //DUPLICATE
            CartData h = new CartData();

            h.itemCode = "C001"; h.quantity = "10";//h.description = "Max";  h.uom = "dozen";

            CartData i = new CartData();

            i.itemCode = "C008"; i.quantity = "10"; //i.description = "Max"; i.uom = "dozen";
            CartData j = new CartData();

            j.itemCode = "C009"; j.quantity = "10";//j.description = "Max";  j.uom = "dozen";

            cart.Add(a); cart.Add(b); cart.Add(c); cart.Add(d); cart.Add(e); cart.Add(f); cart.Add(g);
            cart.Add(h); cart.Add(i); cart.Add(j);

            return(cart);
        }
Example #2
0
        public static List <CartData> CombineDuplicates(List <CartData> oldList)
        {
            List <CartData> newList = new List <CartData>();

            var result = oldList.GroupBy(x => x.itemCode,
                                         (key, values) => new
            {
                itemCode = key,
                quantity = values.Sum(x => Int32.Parse(x.quantity)),
            });

            CartData c;

            foreach (var item in result.ToList())
            {
                //Console.WriteLine(item.itemCode + ":"+item.quantity);
                c          = new CartData();
                c.itemCode = item.itemCode; c.quantity = item.quantity.ToString();
                newList.Add(c);
                Console.WriteLine(c.itemCode + "," + c.quantity);
            }

            return(newList);
        }