Exemple #1
0
        public void Multiple_UnitofWorkCommit()
        {
            Action work1 = () =>
            {
                var t14Repo = LocalServiceLocator.GetService <IT14Repository>();
                t14Repo.Add(new T14(Guid.NewGuid().ToString("N"), "ok"));
                t14Repo.Context.Commit();
                //return t14Repo.Context;
            };

            Action work2 = () =>
            {
                var orderRepository = LocalServiceLocator.GetService <IYmtOrderRepository>();
                var order           = new YmtOrder("aacd0bc4-34e5-4c0f-a255-214d567698cd", "test_order", 77);
                order.AddOrderLine(new OrderLine(100))
                .AddOrderLine(new OrderLine(120))
                .AddOrderLine(new OrderLine(150))
                .SetAddress(new ReceiptAddress {
                    City = "A", Zip = "B", Street = "C"
                });
                var verify = order.Validator();
                Console.WriteLine(verify.Message);
                Assert.AreEqual(true, verify.Success);
                orderRepository.AddOrUpdate(e => e.Id, order);
                orderRepository.Context.Commit();
                //return orderRepository.Context;
            };

            MultipleUnitOfWorkBuilder.Instance.Commit(work1, work2);
            //using (MultipleUnitOfWorkBuilder.Instance.Append(work1).Append(work2).Commit())
            //{
            //};
        }
Exemple #2
0
        public void OneToMany_Order()
        {
            var order = new YmtOrder(Guid.NewGuid().ToString(), "test order", 12M);

            //
            order.AddOrderLine(new OrderLine(100))
            .AddOrderLine(new OrderLine(120))
            .AddOrderLine(new OrderLine(150))
            .SetAddress(new ReceiptAddress {
                City = "A", Zip = "B", Street = "C"
            });
            var orderRepository = LocalServiceLocator.GetService <IYmtOrderRepository>();

            orderRepository.Add(order);
            var x = orderRepository.Context.AsyncCommit();

            Assert.True(x.Result.ResultData > 0);
        }
Exemple #3
0
        public void AddOrUpdateOrder()
        {
            var orderRepository = new YmtOrderRepository(new EFUnitOfWork("orderContext"));//LocalServiceLocator.GetService<IYmtOrderRepository>();
            var order           = new YmtOrder("0000b222-db89-4c4b-b226-1fc694d3d065", "test order", 60);

            //
            order.AddOrderLine(new OrderLine(100))
            .AddOrderLine(new OrderLine(120))
            .AddOrderLine(new OrderLine(150))
            .SetAddress(new ReceiptAddress {
                City = "A", Zip = "B", Street = "C"
            });
            var verify = order.Validator();

            Console.WriteLine(verify.Message);
            Assert.AreEqual(true, verify.Success);
            orderRepository.AddOrUpdate(e => e.Id, order);
            orderRepository.Context.Commit();
        }