Exemple #1
0
 public void Add(Order order)
 {
     using (var db = new OrderDB()) {
         db.Entry(order).State = EntityState.Added;
         db.SaveChanges();
     }
 }
Exemple #2
0
 public void Delete(String orderId)
 {
     using (var db = new OrderDB()) {
         var order = db.Order.Include("Items").SingleOrDefault(o => o.Id == orderId);
         db.OrderItem.RemoveRange(order.Items);
         db.Order.Remove(order);
         db.SaveChanges();
     }
 }
 public void Update(Order order)
 {
     using (var db = new OrderDB()) {
         Console.WriteLine(db.Entry(order).State);
         db.Entry(order).State = EntityState.Modified;
         order.Items.ForEach(
             item => db.Entry(item).State = EntityState.Modified);
         db.SaveChanges();
     }
 }
 public void Update(Order order)
 {
     using (var db = new OrderDB()) {
         db.Order.Attach(order);
         db.Entry(order).State = EntityState.Modified;
         order.Items.ForEach(
             item => db.Entry(item).State = EntityState.Modified);
         db.SaveChanges();
     }
 }
Exemple #5
0
 public void Add(Order order)
 {
     using (var db = new OrderDB())
     {
         if (db.Order.Where(o => o.Id == order.Id).Count() == 0)
         {
             db.Order.Add(order);
             //db.Order.Attach(order);
             //db.Entry(order).State = EntityState.Added;
             db.SaveChanges();
         }
     }
 }
Exemple #6
0
 public void Update(Order order, List <OrderItem> removed, List <OrderItem> newItems)
 {
     using (var db = new OrderDB()) {
         order.Items.AddRange(newItems);
         foreach (OrderItem item in order.Items)
         {
             if (removed.Contains(item))
             {
                 db.Entry(item).State = EntityState.Deleted;
             }
             else if (newItems.Contains(item))
             {
                 db.Entry(item).State = EntityState.Added;
             }
             else
             {
                 db.Entry(item).State = EntityState.Modified;
             }
         }
         db.SaveChanges(); //先保存items部分的修改
         db.Entry(order).State = EntityState.Modified;
         db.SaveChanges(); //保存Order的属性修改
     }
 }
Exemple #7
0
        public void Update(Order newOrder)
        {
            using (var db = new OrderDB()) {
                Order oldOrder = db.Order.Include("Details").SingleOrDefault(o => o.Id == newOrder.Id);
                db.OrderItem.RemoveRange(oldOrder.Details);
                db.SaveChanges();
            }

            using (var db = new OrderDB()) {
                foreach (OrderDetail detail in newOrder.Details)
                {
                    db.Entry(detail).State = EntityState.Added;
                }
                //db.SaveChanges();//先保存items部分的修改
                db.Entry(newOrder).State = EntityState.Modified;
                db.SaveChanges();//保存Order的属性修改
            }
        }