public void SaveBath_Order() { var orderRepository = LocalServiceLocator.GetService <IYmtOrderRepository>(); //var orderList = new HashSet<Ymt_OrderLine>(); for (var i = 0; i < 50000; i++) { //1. var order = new YmtOrder(Guid.NewGuid().ToString(), "ok", 20M); order.SetAddress(new ReceiptAddress { City = "A", Street = "B", Zip = "CCC" }); //2. //这里是DTO映射到实体 //var order = orderDto.MapTo<OrderDto, Ymt_Order>(); //3. //这里是实体验证(实体需要继承 IValidatableObject 接口),主意:如果不显示执行xx.Validatory 方法,程序会自动隐式执行实体验证 var val = order.Validator(); Assert.AreEqual(true, val.Success, val.Message); //验证的原始写法 //var entityValidator = EntityValidatorFactory.CreateValidator(); //Assert.AreEqual(false, entityValidator.IsValid(order)); //3. // orderRepository.Add(order); } //4 var result = orderRepository.Context.Commit(); Assert.AreEqual(true, result.Success); Assert.AreEqual(3, result.ResultData); }
public void OneToOne_Order() { var order = new YmtOrder(Guid.NewGuid().ToString("N"), "TT", 55.78M); Assert.AreEqual(true, order.Validator().ResultData.Success); //1:1 order.SetAddress(new ReceiptAddress { City = "A", Street = "C", Zip = "D" }); var orderRepository = LocalServiceLocator.GetService <IYmtOrderRepository>(); orderRepository.Add(order); var x = orderRepository.Context.Commit(); Assert.AreEqual(1, x.ResultData); }